深度探索QT窗口系统---几何篇4

来源:互联网 发布:网络对传统文化的影响 编辑:程序博客网 时间:2024/06/15 23:15

前面几篇介绍了窗口的基本几何元素,怎么移动窗口,怎么缩放窗口,虽然这些都很基本的东西,但要设计出漂亮的有个性的界面时,熟悉这些方法是必须的,当然了,如果你不需要自己定制控件,使用界面编辑器编辑界面就行了。本篇介绍如何去掉窗口边框?怎么限定窗口的大小?

首先来看第一个问题:

1.有父窗口的的窗口,自动变为无边框窗口

2.无父窗口,加Qt::FramelessWindowHint标志(Qt3.0以上的版本)

[html] view plain copy
print?
  1. QWidget widget(NULL, Qt::FramelessWindowHint);  
  2. 或  
  3. widget.setWindowFlags(Qt::FramelessWindowHint);  
QWidget widget(NULL, Qt::FramelessWindowHint);或widget.setWindowFlags(Qt::FramelessWindowHint);

3.无父窗口,加标志Qt::ToolTip标志,方法同2

4.无父窗口,加标志Qt::SplashScreen

对于有父窗口,通过加上Qt::Window能不能变成有边框窗口,答案是不行的,那要加边框怎么办,只有自定义了。

接下来我们来看第二个问题,怎么限定窗口的大小?

有时候因为设计的需要,我们往往会限定窗口的大小,QT提供了如下限定窗口尺寸的方法:

[html] view plain copy
print?
  1. /*限定窗口的宽度和高度*/  
  2. void setFixedSize(int w, int h)  
  3. /*限定窗口的宽度*/  
  4. void setFixedWidth(int w)   
  5. /*限定窗口的高度*/  
  6. void setFixedHeight(int h)  
  7. /*限定窗口的最大尺寸,窗口的范围(0, 0)到(w,h)*/  
  8. void setMaximumSize (const QSize & size)  
  9. void setMaximumSize (int maxw, int maxh)  
  10. /*限定窗口的最大高度,高度范围[0,maxh]*/  
  11. void setMaximumHeight(int maxh)  
  12. /*限定窗口的最大宽度,宽度范围[0, maxw]*/  
  13. void setMaximumWidth(int maxw)  
  14. /*限定窗口的最小尺寸,窗口的范围>=(w, h)*/  
  15. void setMinimumSize (const QSize & size)  
  16. void setMinimumSize (int maxw, int maxh)  
  17. /*限定窗口的最小高度,高度>=maxh*/  
  18. void setMinimumHeight(int maxh)  
  19. /*限定窗口的最小宽度,宽度>=maxw*/  
  20. void setMinimumWidth(int maxw)  
/*限定窗口的宽度和高度*/void setFixedSize(int w, int h)/*限定窗口的宽度*/void setFixedWidth(int w) /*限定窗口的高度*/void setFixedHeight(int h)/*限定窗口的最大尺寸,窗口的范围(0, 0)到(w,h)*/void setMaximumSize (const QSize & size)void setMaximumSize (int maxw, int maxh)/*限定窗口的最大高度,高度范围[0,maxh]*/void setMaximumHeight(int maxh)/*限定窗口的最大宽度,宽度范围[0, maxw]*/void setMaximumWidth(int maxw)/*限定窗口的最小尺寸,窗口的范围>=(w, h)*/void setMinimumSize (const QSize & size)void setMinimumSize (int maxw, int maxh)/*限定窗口的最小高度,高度>=maxh*/void setMinimumHeight(int maxh)/*限定窗口的最小宽度,宽度>=maxw*/void setMinimumWidth(int maxw)

到这里窗口的几何特性介绍完了,下节介绍窗口布局。

 

0 0
原创粉丝点击