QT学习笔记:从初识到实现不规则窗体
![](https://csdnimg.cn/release/wenkucmsfe/public/img/star.98a08eaa.png)
"这篇文章主要介绍了QT designer的学习精华,包括如何制作五子棋小游戏、图形绘制、使用DLL、管理QRC资源以及实现不规则窗体等。作者通过一系列Qt学习笔记,分享了Qt3库的使用,并提供了在Qt程序中实现窗体移动和创建无边框窗口的具体代码示例。" 在Qt designer的学习中,我们可以提取以下几个关键知识点: 1. **五子棋小游戏开发**:使用Qt可以开发桌面应用程序,如五子棋游戏,这涉及到GUI界面设计、事件处理和逻辑编程。开发者需要理解QGraphicsView和QGraphicsScene用于构建游戏场景,以及如何监听和响应棋盘上的点击事件来执行游戏逻辑。 2. **图形绘制**:Qt提供了丰富的绘图API,如QPainter类,可以用来绘制各种复杂的图形和图像。开发者可以通过重载paintEvent()函数,利用QPainter进行定制化绘图。 3. **使用DLL**:在Windows环境下,Qt支持动态链接库(DLL)的使用。通过Qt的QLibrary类,可以加载和使用DLL中的函数,这在模块化开发或扩展功能时非常有用。 4. **QRC资源管理**:QRC资源系统允许开发者将项目中的所有文件(如图片、音频、文本等)打包成一个二进制资源文件,便于分发和管理。使用qmake和rcc工具可以生成QRC文件,并在运行时通过Qt的资源系统访问这些资源。 5. **实现不规则窗体**:Qt允许创建无边框或自定义形状的窗口。首先,需要设置窗口样式(WFlags)为WstyleNoBorder以去除边框。然后,可以使用QPixmap和QBitmap创建一个图像掩码,白色部分表示透明,黑色部分表示窗口形状。通过setMask()和setBackgroundPixmap()方法,可以实现自定义窗口形状,使其根据指定的图像形状显示。 6. **移动窗体事件处理**:在Qt中,可以通过截取并处理Widget的鼠标事件(mouseMoveEvent()和mousePressEvent())来自定义窗体的移动行为。在mouseMoveEvent()中获取鼠标的新位置,结合之前记录的鼠标点击位置计算出窗口的新位置,然后调用move()方法更新窗体位置。 7. **无边框窗口的创建**:创建无边框窗口时,需要设置窗口风格标志,如使用setWindowFlags()函数设置WstyleNoBorder。同时,使用QPixmap作为背景并设置掩码,使得窗口可以按照掩码的形状显示,达到无边框且形状可自定义的效果。 通过这些知识点的学习,开发者能够更深入地掌握Qt designer的使用,从而构建更加灵活和富有个性化的用户界面。
![](https://csdnimg.cn/release/download_crawler_static/1689498/bgb.jpg)
![](https://csdnimg.cn/release/download_crawler_static/1689498/bgc.jpg)
![](https://csdnimg.cn/release/download_crawler_static/1689498/bgd.jpg)
剩余63页未读,继续阅读
![application/octet-stream](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![7z](https://img-home.csdnimg.cn/images/20210720083312.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)