2008年7月7日 星期一

QT-chap 2


QPushButton quit( "Quit", 0 );

表示建立一個最上層視窗,按鈕上面的字為"Quit"


quit.resize( 75, 30 );
quit.setFont( QFont( "Times", 18, QFont::Bold ) );

設定QPushButton的位置與文字和字型
其中,QFont::Bold可以這樣用是因為
Bold是QFont類別中的一個成員
且其設定為static
則不需要宣告物件,直接透過類別則可以使用


QObject::connect( &quit, SIGNAL(clicked()), &a, SLOT(quit()) );

connect是qt裡面非常重要的一個function
注意connect()是QObject中的一個靜態(static)函數
這一行在兩個Qt物件(直接或間接繼承QObject物件的對物件)中建立了一種單向的連接。
每一個Qt物件都有signals(發送消息)和slots(接收消息)。所有窗口元件都是Qt物件。
它們繼承QWidget,而QWidget繼承QObject。

這裡quit的clicked() signal和a的quit() slot連接起來了,所以當這個按鈕被按下的時候,這個程序就退出了。

homework的部分應該就是把clicked()由pressed()取代

沒有留言: