C Qt引擎 (2)按鈕相關介面 物件樹的概念

2021-10-19 17:40:14 字數 1889 閱讀 7968

#include "widget.h"

/* * qt編輯器快捷鍵

* 注釋 ctrl+/

* 轉到定義或宣告切換 f2

* * 執行 ctrl+r

* 構建 ctrl+b

* */

int main(int argc, char *ar**)

自定義按鈕子類 mybutton.h

#ifndef mybutton_h

#define mybutton_h

#include #include class mybutton : public qpushbutton

~mybutton()

};#endif // mybutton_h

mybutton.cpp

#include "mybutton.h"

mybutton::mybutton()

main.cpp

#include "widget.h"

/* * qt編輯器快捷鍵

* 注釋 ctrl+/

* 轉到定義或宣告切換 f2

* * 執行 ctrl+r

* 構建 ctrl+b

* */

int main(int argc, char *ar**)

widget.h

#ifndef widget_h

#define widget_h

#include //包含 qt空視窗標頭檔案

class widget : public qwidget

;#endif // widget_h

呼叫類widget**

#include "widget.h"

#include //包含按鈕標頭檔案

#include "student.h"

#include "mybutton.h"

//建構函式

widget::widget(qwidget *parent)

: qwidget(parent)

\ qpushbutton:hover\

qpushbutton:pressed");

//左上角為(0, 0)為原點

btn->move(100, 100);//設定按鈕位置

btn->show();//顯示 按鈕

//自定義button

mybutton* mybtn = new mybutton;

mybtn->setparent(this);//設定父類為本視窗,當本視窗釋放時,會釋放孩子 先釋放孩子,後釋放父親

mybtn->settext("自定義按鈕");

mybtn->show();

//對比自定義按鈕的構造方法

qpushbutton* newqpushbtn = new qpushbutton("系統按鈕", this);

newqpushbtn->move(100, 50);

newqpushbtn->show();

mybutton* mbtn = new mybutton(this, "自定義按鈕2");

mbtn->move(100, 0);

mbtn->show();

}//析構函式

widget::~widget()

C Qt引擎 (4)自定義訊號和槽

qt內建了大量訊號和槽,還支援使用者自定義訊號 和 槽 有宣告且有實現返回值型別為void槽函式 可以帶引數,也可以過載 槽函式實參是從訊號而來 寫在signal 下方只需宣告,無需實現返回值為void支援帶參,且可過載emit 可觸發訊號乙個訊號可以被多個槽繫結同乙個槽函式,可以繫結多個訊號訊號 ...

WPF 按鈕樣式(2)

上次 寫到按鈕樣式 轉變的問題 看過我第一章內容的都知道 在wpf中按鈕的樣子是乙個白色按鈕 沒有什麼特別的地方 如果有微軟desgin 設計圖形 改變按鈕的樣式 是個不錯的方法 但是我們在設計按鈕圖形的時候 往往會設計不出好的圖示 對嗎?不如直接貼乙個圖 好看 是不是有這個想法 但是普通的貼圖 按...

遊戲引擎架構 2

世界的燈光 在變換過程中,通常是在稱為觀察空間的座標空間中,我們遇到了最重要的運算之一 光照計算。它是一種這樣的事情,當它工作時,你不關注它,但當它不工作時,你就非常關注它了。有很多不同的光照方法,從簡單的計算多邊形對於燈光的朝向,並根據燈光到多邊形的方向和距離加上燈光顏色的百分比值,一直到產生邊緣...