Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 7, 2010 13:59:50

legioner
От:
Зарегистрирован: 2010-03-31
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

pyqt qdialog

пишу программу которая висит в трее. и по сигналу выводит на экран окно QDialog.
возникли проблемы:
1. мне нужно окно уведомления вывести на передний план (если есть возможность чтобы она на переднем плане оставалась)
2. как убрать заголовок окна
3. если я закрываю qdialog то программа в трее закрывается.

#!/usr/bin/env python
# coding: utf-8

import sys
import os
from PyQt4 import QtGui,QtCore


class AlarmWindow():
def __init__(self):
self.mes = MainAlarmWin()
self.mes.exec_()

class MainAlarmWin(QtGui.QDialog):
def __init__(self, parent=None):
super(MainAlarmWin, self).__init__(parent)
self.resize(300, 100)


class MainTrayAlarm(QtGui.QWidget):
def __init__(self, parent=None):
QtGui.QWidget.__init__(self, parent)
self.quitAction = QtGui.QAction('&Quit', self)
QtCore.QObject.connect(self.quitAction, QtCore.SIGNAL('triggered()'), QtGui.qApp, QtCore.SLOT('quit()'))
self.trayIconMenu = QtGui.QMenu(self)
self.trayIconMenu.addAction(self.quitAction)
self.trayIconPixmap = QtGui.QPixmap('icon.ico')
self.trayIcon = QtGui.QSystemTrayIcon(self)
self.trayIcon.setContextMenu(self.trayIconMenu)
self.trayIcon.setIcon(QtGui.QIcon(self.trayIconPixmap))
self.trayIcon.show()

self.timer = QtCore.QTimer(self)
QtCore.QObject.connect(self.timer, QtCore.SIGNAL('timeout()'), self.Message)
self.timer.start(5000)#in miliseconds

def Message(self):
AlarmWindow()


if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
win = MainTrayAlarm()
app.exec_()



Офлайн

#2 Дек. 8, 2010 14:11:27

homyakov
От:
Зарегистрирован: 2010-12-08
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

pyqt qdialog

Использовать setWindowFlags. Можно посмотреть в примерах с PyQt в PyQt4\examples\widgets\windowflags.pyw



Офлайн

#3 Дек. 8, 2010 15:34:19

legioner
От:
Зарегистрирован: 2010-03-31
Сообщения: 31
Репутация: +  0  -
Профиль   Отправить e-mail  

pyqt qdialog

homyakov то что искал. Спасибо большое )



Отредактировано (Дек. 8, 2010 15:34:46)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version