Qt常用類——QFrame類與QWidge類


QFrame與QWidget的區別:

QFrame是基本控件的基類,QWidget是QFrame基類。

QWidget類是所有用戶界面對象的基類。

  Widget是用戶界面的基本單元:它從窗口系統接收鼠標,鍵盤和其他事件,並在屏幕上繪制自己。

  每個Widget都是矩形的,它們按照Z-order進行排序。 

QFrame類:

1.公有類型

enum Shadow { Plain, Raised, Sunken }
enum Shape { NoFrame, Box, Panel, StyledPanel, ..., WinPanel }
enum StyleMask { Shadow_Mask, Shape_Mask }

2.屬性

frameRect : QRect//控件矩形
frameWidth : const int//框架的寬度
frameShadow : Shadow//有無陰影
lineWidth : int//線寬度
frameShape : Shape//框架形狀
midLineWidth : int//中間線的寬度

3.公有函數

QFrame(QWidget * parent = 0, Qt::WindowFlags f = 0)//構造函數,設置主窗口和框架類型
~QFrame()//析構函數
QRect frameRect() const//返回   框架的rect

Shadow frameShadow() const
Shape frameShape() const

int QFrame::frameStyle() const//返回框架風格,類似frameShadow()
int frameWidth() const
int lineWidth() const
int midLineWidth() const
void setFrameRect(const QRect &)
void setFrameShadow(Shadow)
void setFrameShape(Shape)
void setFrameStyle(int style)
void setLineWidth(int)
void setMidLineWidth(int)

3.重寫公有函數

virtual QSize sizeHint() const//返回尺寸大小

4.保護函數

void initStyleOption(QStyleOptionFrame * option) const//初始化畫一個框架

5.公有保護函數

virtual void changeEvent(QEvent * ev)//事件狀態改變

virtual bool event(QEvent * e)//接收事件

virtual void paintEvent(QPaintEvent *)//重繪事件

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM