以命令列的形式改變視窗的現實風格
./*** -style cde/motif/plastique
根據標籤快捷鍵定位輸入框
qlabel *label = new qlabel(tr("&new"));
qlineedit *edit = new qlineedit();
label->setbubby(edit);
預設按鈕:當使用者按下enter的時候,能夠按下對應的按鈕
button->setdefault(true);
禁止按鈕:顯示為灰色,不和使用者互動
button->setenabled(false);
布局中占用其他的剩餘空間
layout->addstretch();
設定視窗的固定高度和寬度
dlg->setfixedheight(dlg->sizehint().height());
dlg->setfixedwidth(dlg->sizehint().width());
訊號與槽:
利用qt設計師生成視窗
生成檔案dlg.ui;
繼承ui::dlg.
自動連線訊號與槽
setupui函式會自動將符合on_objectname_signalname()命名慣例的任意槽
與相應的objectname的signalname()訊號連線到一起。上例中,建立了下面
的訊號-槽關係:
connect(lineedit, signal(textchanged(const qstring &)),
this, slot(on_lineedit_textchanged()));
刪除父物件時,它的子物件會被自動刪除
通過布局管理器來管理擴充套件對話方塊的視窗大小
layout()->setsizeconstraint(qlayout::setfixedsize);
設計乙個可擴充套件對話方塊的基本思路:
切換按鈕
訊號-槽連線
不可以改變尺寸大小的布局
多頁視窗部件有:qtabwidget, qtoolbox
專案檢視視窗部件(帶滾動條):qlistview, qtreeview, qtableview
使用資源管理機制的方法:
將放在images/目錄下;
在***.pro加入:resources = ***.qrc
增加資源檔案***.qrc, 內容形式如下:
源**中引用方式:setwindowicon(qicon(":/images/icon.png"));
或者 setwindowicon(qicon(":/title.png"));
建立選單欄、工具欄、狀態列
模態對話方塊與非模態對話方塊
模態對話方塊典型例子:開啟檔案對話方塊,警告對話方塊
非模態對話方塊典型例子:查詢對話方塊
模態對話方塊一般在堆中建立,非模態對話方塊一般在棧中建立
模態對話方塊使用exec()顯示,非模態對話方塊使用show()顯示
建立乙個啟動畫面
mainwindow的**視窗部件可以為:
讀寫平台無關的二進位制檔案
建立乙個自定義視窗部件的過程:
選擇乙個合適的視窗部件
對它子類化
實現虛函式,改變它的行為
構建乙個可以整合到qt設計師中的視窗部件
自動呼叫的情況:
主動呼叫的情況:
update();
repaint(); // 不常用
視窗屬性qt::wa_staticcontents
當重新改變視窗部件的大小時,視窗部件的內容並沒有發生改變,
而且內容仍舊保留從視窗左上角開始的特性。這樣就可以避免重繪
已經顯示的區域。
在設計師中整合自定義視窗部件的2種方法
鍵盤:qt::key_plus: 對數字小鍵盤起作用,對於大鍵盤,要同時按下shift
qt::key_enter: 對數字小鍵盤起作用
當定義乙個函式時,如果沒有用到其中的引數p,但又不想在編譯時產生警告:
在函式的開頭,使用巨集
q_unused(p);
在qgraphicsitem的paint函式中,如果不希望線的寬度縮放,則
painter->setpen(color); //不指定pen的寬度,或者指定為0.
qt 程式設計技巧
1 qt4一下 解決亂碼 qtextcodec setcodecfortr qtextcodec codecforlocale 2 狀態列顯示資料 ui statusbar showmessage tr 歡迎使用qcom串列埠除錯助手 3 qt學習參考 4 error no matching fun...
Qt程式設計 Qt學習筆記《三》
1.如果程式中使用了png以外格式的,在發布程式時就要將qt安裝目錄下plugins中的imagineformats檔案複製到發布檔案中。2.在函式宣告處快速新增函式定義可單擊函式名,按下alt enter鍵後,按下enter鍵就可以進入到函式定義部分。3.關聯槽和訊號的兩種方法 1.直接在設計器中...
QT學習筆記之QT網路程式設計
tcp 傳輸控制協議,提供的是面向連線 可靠的位元組流服務。當客戶和伺服器彼此交換資料前,必須先在雙方之間建立乙個tcp連線,之後才能傳輸資料。tcp提供超時重發,丟棄重複資料,檢驗資料,流量控制等功能,保證資料能從一端傳到另一端。udp 使用者資料報協議,是乙個簡單的面向資料報的運輸層協議。udp...