pyqt timerの応用
3832 ワード
主な内容
主にPyQtプログラムの全体的なフレームワークを理解します;
関連モジュール:QAPplication,QLabel,QTimer
実例説明
まず簡単なPyQtプログラムを見てみましょう.
1
2
3
4
5
6
7
8
9
10
まず導入内容を見ると,PyQtにおけるインタフェースに関するモジュールは一般的にQtGuiにあり,QtCoreには多くの基本コンポーネントが含まれている.
アプリケーション全体のフレームワークは次のとおりです.
途中で省略した部分は自分で実現したインタフェース部分で、上の小さな例では、小さなウィンドウが表示され、「Hello PyQT!」と表示され、次の行1行分析されます.
6行目では、htmlのような文法をサポートするQLabelを宣言しました.
7行目では、フレームがなく、ソフトウェア起動画面に一般的に使用されるウィンドウタイプをフラッシュスクリーンに設定します.この言葉を注釈すると、正常なウィンドウが表示されます.
8行目では、そのプロパティを表示に設定します.
9行目では、QTimerでタイミングを設定し、10 s後にプログラムを終了します.
簡単なまとめ:
PyQtプログラム全体フレームワーク、QAPplication QLabelラベルコンポーネント:表示内容 QTimerタイミングコンポーネント:時間スケジューリングタスクの完了
拡張知識:
QLabelはよく使われるコンポーネントで、次のプログラムはQLabelの使い方についてもっと提供しています.
主にモジュールに関連する:QFont,QpixMap,QFontMetric,Qpainter,QTextDocument,
QLabelメソッド:
label.setPixmap(pixmap)
label.setMask(pixmap.createMaskFromColor(Qt.red))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
主にPyQtプログラムの全体的なフレームワークを理解します;
関連モジュール:QAPplication,QLabel,QTimer
実例説明
まず簡単なPyQtプログラムを見てみましょう.
1
2
3
4
5
6
7
8
9
10
import
sys
from
PyQt4.QtGui
import
*
from
PyQt4.QtCore
import
*
app
=
QApplication(sys.argv)
label
=
QLabel(
"<font color=red size=128><b>Hello PyQT!</b></font>"
)
label.setWindowFlags(Qt.SplashScreen)
label.show()
QTimer.singleShot(
10000
, app.quit)
# 10s
app.exec_()
まず導入内容を見ると,PyQtにおけるインタフェースに関するモジュールは一般的にQtGuiにあり,QtCoreには多くの基本コンポーネントが含まれている.
アプリケーション全体のフレームワークは次のとおりです.
app
=
QApplication(sys.argv)
#...
app.exec_()
途中で省略した部分は自分で実現したインタフェース部分で、上の小さな例では、小さなウィンドウが表示され、「Hello PyQT!」と表示され、次の行1行分析されます.
6行目では、htmlのような文法をサポートするQLabelを宣言しました.
7行目では、フレームがなく、ソフトウェア起動画面に一般的に使用されるウィンドウタイプをフラッシュスクリーンに設定します.この言葉を注釈すると、正常なウィンドウが表示されます.
8行目では、そのプロパティを表示に設定します.
9行目では、QTimerでタイミングを設定し、10 s後にプログラムを終了します.
簡単なまとめ:
PyQtプログラム全体フレームワーク、QAPplication QLabelラベルコンポーネント:表示内容 QTimerタイミングコンポーネント:時間スケジューリングタスクの完了
拡張知識:
QLabelはよく使われるコンポーネントで、次のプログラムはQLabelの使い方についてもっと提供しています.
主にモジュールに関連する:QFont,QpixMap,QFontMetric,Qpainter,QTextDocument,
QLabelメソッド:
label.setPixmap(pixmap)
label.setMask(pixmap.createMaskFromColor(Qt.red))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import
sys
from
PyQt4.QtGui
import
*
from
PyQt4.QtCore
import
*
msg
=
"Hello PyQt!"
app
=
QApplication(sys.argv)
font
=
QFont(
"Times New Rome"
,
36
, QFont.Bold)
fm
=
QFontMetrics(font)
pixmap
=
QPixmap(fm.width(msg)
+
5
, fm.height()
+
5
)
pixmap.fill(Qt.white)
painter
=
QPainter(pixmap)
document
=
QTextDocument()
document.setDefaultFont(font)
document.setHtml(
"<font color=red>%s</font>"
%
msg)
document.drawContents(painter)
label
=
QLabel()
label.setPixmap(pixmap)
label.setMask(pixmap.createMaskFromColor(Qt.red))
#label.setWindowFlags(Qt.SplashScreen|Qt.FramelessWindowHint)
label.show()
QTimer.singleShot(
10000
, app.quit)
# 1 minute
app.exec_()
from PyQt4 import QtCore, QtGui
def xxx():
def __init__(self):
self.timer=QtCore.QTimer()
QtCore.QObject.connect(self.timer,QtCore.SIGNAL("timeout()"), self.OnTimer)
self.timer.start( 1000 )
def OnTimer(self):
print 'Get Timer'