网站怎么添加假备案号,网站窗口代码,如何做领券网站,博物馆门户网站建设目录
1、搭建开发环境#xff08;VS2010和QT4.8.2#xff09;
2、创建一个QT窗口
3、在QT窗口中添加子窗口
4、QT界面布局
5、QT信号#xff08;SIGNAL#xff09;和槽#xff08;SLOT#xff09;
6、最后 C软件异常排查从入门到精通系列教程#xff08;专栏文章列…目录
1、搭建开发环境VS2010和QT4.8.2
2、创建一个QT窗口
3、在QT窗口中添加子窗口
4、QT界面布局
5、QT信号SIGNAL和槽SLOT
6、最后 C软件异常排查从入门到精通系列教程专栏文章列表欢迎订阅持续更新...https://blog.csdn.net/chenlycly/article/details/125529931C/C实战专栏专栏文章已更新460多篇持续更新中...https://blog.csdn.net/chenlycly/article/details/140824370C 软件开发从入门到精通专栏文章持续更新中...https://blog.csdn.net/chenlycly/category_12695902.htmlVC常用功能开发汇总专栏文章列表欢迎订阅持续更新...https://blog.csdn.net/chenlycly/article/details/124272585C软件分析工具从入门到精通案例集锦专栏文章持续更新中...https://blog.csdn.net/chenlycly/article/details/131405795开源组件及数据库技术专栏文章持续更新中...https://blog.csdn.net/chenlycly/category_12458859.html网络编程与网络问题分享专栏文章持续更新中...https://blog.csdn.net/chenlycly/category_2276111.html QT是跨平台的界面库它集成了很多优秀的界面设计思想它作为程序UI界面编程的框架是个很好的选择。今天就来讲讲使用C和QT开发应用程序入门方面的内容并分享一个简单的开发实例以供借鉴或参考。
1、搭建开发环境VS2010和QT4.8.2 先下载qt-win-opensource-4.8.2-vs2010.exe并安装本文安装在C盘根目录 打开vs2010选择 控制台工程win32 console Application 选中空的工程empty project 在工程中添加源文件 将QT头文件包含路径C:\Qt\4.8.2\include;C:\Qt\4.8.2\include\QtCore;C:\Qt\4.8.2\include\QtGuilib库文件包含路径C:\Qt\4.8.2\lib添加到VS工程中如下所示 2、创建一个QT窗口 每个qt程序都必须有一个Qapplication实例 。当然我们得链接库文件 1Release下 #pragma commentlib “qtcore4.lib” #pragma commentlib “qtgui4.lib” 2Debug下 #pragma commentlib “qtcored4.lib” #pragma commentlib “qtguid4.lib” 这时我们编译过但是运行会提示缺少qtgui4.dll很简单qt的安装目录下bin文件夹下有我们需要的所有dll 1可以单独拷贝需要的dll到exe运行目录主要采用该方式 2可以单独拷贝需要的dll到system32目录不建议实用该方式可能会影响到到其他程序 3当然我们可以添加环境变量PATH C:\Qt\4.8.2\bin然后工程executable directories添加C:\Qt\4.8.2\bin 此时我需要qtcore.dll和qtgui.dll。 运行程序虽然任何东西都没有出现但我们的第一个qt程序已经构建成功QApplication实例构建成功它就是我们的应用程序实例我们可以通过继承Qapplication构建自己的APP实例。 接下来是构建QT窗口了QMainWindow从Qwidget相当于MFC的CWnd继承要显示它只需调用show()接口即可如下 因为我们是控制台工程运行时会有dos窗口弹出debug下可以方便的打印比如cout和printf输出等 如果release下不希望弹出dos窗口可以修改链接器链接属性把子系统从Console设置成Windows 同时链接入口点函数设置成mainCRTStartup 在这里给大家重点推荐一下我的几个热门畅销专栏欢迎订阅博客主页还有其他专栏可以去查看
专栏1该精品技术专栏的订阅量已达到550多个专栏中包含大量项目实战分析案例有很强的实战参考价值广受好评专栏文章持续更新中预计更新到200篇以上欢迎订阅
C软件调试与异常排查从入门到精通系列文章汇总https://blog.csdn.net/chenlycly/article/details/125529931 本专栏根据多年C软件异常排查的项目实践系统地总结了引发C软件异常的常见原因以及排查C软件异常的常用思路与方法详细讲述了C软件的调试方法与手段以图文并茂的方式给出具体的项目问题实战分析实例很有实战参考价值带领大家逐步掌握C软件调试与异常排查的相关技术适合基础进阶和想做技术提升的相关C开发人员 考察一个开发人员的水平一是看其编码及设计能力二是要看其软件调试能力所以软件调试能力排查软件异常的能力很重要必须重视起来能解决一般人解决不了的问题既能提升个人能力及价值也能体现对团队及公司的贡献 专栏中的文章都是通过项目实战总结出来的包含大量项目问题实战分析案例有很强的实战参考价值专栏文章还在持续更新中预计文章篇数能更新到200篇以上 专栏2本专栏涵盖了C多方面的内容是当前重点打造的专栏订阅量已达200多个专栏文章已经更新到460多篇持续更新中...
C/C实战进阶专栏文章持续更新中...https://blog.csdn.net/chenlycly/category_11931267.html 以多年的开发实战为基础总结并讲解一些的C/C基础与项目实战进阶内容以图文并茂的方式对相关知识点进行详细地展开与阐述专栏涉及了C/C领域多个方面的内容包括C基础及编程要点模版泛型编程、STL容器及算法函数的使用等、数据结构与算法、C11及以上新特性不仅看开源代码会用到日常编码中也会用到部分新特性面试时也会涉及到、常用C开源库的介绍与使用、代码分享调用系统API、使用开源库、常用编程技术动态库、多线程、多进程、数据库及网络编程等、软件UI编程Win32/duilib/QT/MFC、C软件调试技术排查软件异常的手段与方法、分析C软件异常的基础知识、常用软件分析工具使用、实战问题分析案例等、设计模式、网络基础知识与网络问题分析进阶内容等。 专栏3
C常用软件分析工具从入门到精通案例集锦汇总专栏文章持续更新中...https://blog.csdn.net/chenlycly/article/details/131405795 常用的C软件辅助分析工具有SPY、PE工具、Dependency Walker、GDIView、Process Explorer、Process Monitor、API Monitor、Clumsy、Windbg、IDA Pro等本专栏详细介绍如何使用这些工具去巧妙地分析和解决日常工作中遇到的问题很有实战参考价值 专栏4
VC常用功能开发汇总专栏文章持续更新中...https://blog.csdn.net/chenlycly/article/details/124272585 将10多年C开发实践中常用的功能以高质量的代码展现出来。这些常用的高质量规范代码可以直接拿到项目中使用能有效地解决软件开发过程中遇到的问题。 专栏5
C 软件开发从入门到精通专栏文章持续更新中...https://blog.csdn.net/chenlycly/category_12695902.html 根据多年C软件开发实践详细地总结了C/C软件开发相关技术实现细节分享了大量的实战案例很有实战参考价值。 3、在QT窗口中添加子窗口 QT的所有控件类都是从QWidget继承所以每个控件都有个构造函数设置父窗口传入QWidget*我们首先添加一个QLable相当于MFC的CStatic显示“hello worldI am QT。。把该控件的父窗口设置为CMainWindow我们从QMainWindow继承方便我们管理各个子窗口。 添加新的类CMainWindow 为了方便管理QLabel显示hello world iam QT子窗口我们继承QMainWindow并组合QLabel子窗口设置其父窗口为this 这样我们便可以在CMainWindow构造函数中创建子窗口了 这时运行程序QLabel并没有把我们的字显示完全而且它默认的位置也不是我们想要的我们想要它显示在窗口正中央。这样引入我们下个话题qt界面的布局。 注意我们在构造函数new了一个QLabel对象但是并没有在析构函数delete掉它因为qt框架自身有内存回收的机制因为Qlabel是CMainWindow的子窗口它析构的时候会自动释放所有子窗口子布局器不需要我们自己显示的delete至于它内部的回收机制希望以后有机会可以介绍这里不多做介绍篇幅已然太长了 当然我们可以添加更多的其他子控件比如QLineEdit、QEdit、QPushButton、QTableWidget等等下边介绍界面布局当然同时我们会用到其他更多的控件。
4、QT界面布局 MFC有RC资源编辑器可以方便的编辑对话框qt也有qtdesigner可以方便的编辑各种窗口但是qt更灵活提供布局管理器可以方便的为我们的界面布局不需要运行时计算主窗口大小然后计算各个子控件位置常用的界面布局类QHBoxLayout水平布局、QVBoxLayout垂直布局、QGridLayout网格布局 。 上一段的Hello world Iam QT并没有显示完整我希望它显示在CMainWindow正中央可以用QHBoxLayout也可以用QVBoxLayout因为我们要往布局器中加入的只有一个QLabel窗口当然水平布局垂直布局都一样。 添加两个成员函数CreateSubCtrlsCreateSubLayout创建子窗口创建子布局 首先创建一个水平布局器把QLabel加进去然后设置中心窗口的布局。 注意我们创建m_pLabelHello并没有指定父窗口它的父窗口是NULL但是加入layout中layout又被pCentralWidget setlayout为自己的子布局器pCentralWidget又是CMainWindow的子窗口这样父子窗口的层级就出来了。不需要指定父窗口了。 我们希望有更复杂的布局 创建它们 因为我们用到的中文需要设置中文字符编码器要不会有乱码 现在创建布局 显示结果 现在我们分析下这个布局
1创建网格布局并加入四个控件行列规定好 2创建水平布局加入两个按钮 3创建垂直布局加入label加入网格布局加入水平布局 从而得到 5、QT信号SIGNAL和槽SLOT QT提供信号和槽的机制将响应的信号和槽关联起来(connect函数,在Qobject中定义QObject是所有QT类的基类) connect函数有四个参数: 第一个参数是信号的发送者 第二个参数是 发送什么信号 第三个参数是 信号的接受者 第四个参数是 接受者的槽就是响应函数 我们连接服务器地址的 LineEdit的textChanged信号用户编辑内容便触发到客户端的LineEdit的setText槽设置文本这样如果编辑第一个LineEdit第二个LineEdit便跟着变化。 添加Init成员函数 关联信号和槽注意,信号和槽函数的参数不能有变量声明如 运行结果 我们可以自定义槽函数 用关键字 slots在头文件中定义可以有public private protected修饰。 注意一定要加上Q_OBJECT宏。 正如前面介绍的qt可以任意链接信号和槽。现在我们希望第一个LineEdit内容一旦改变便发送信号给我们自定义的TextChengedSlot槽。我们自己在槽的响应中改变第二个LineEdit文本,这样我们应该修改信号的接受者和接受者的槽函数 现在我们需要用到qt的一个工具moc工具。它在qt安装目录下的bin目录里 1运行-cmd-进入qt的安装目录bin目录下 cd C:\Qt\4.8.2\bin2用moc工具为我们生成信号槽链接机制的moc文件 Moc E:\vs2010_project\qttest\qttest\mainwindow.h –o E:\vs2010_project\qttest\qttest\moc_mainwindow.cpp 这样moc工具会在我们指定的目录下生成moc_mainwindow.cpp 把这个cpp加入到工程编译运行运行结果 6、最后 QT的功能很多支持序列化串行化文档视图框架还有信号槽内部机制多语言集成了其他优秀的第三方库类型注册机制等等。 此外QT自带很多很方便的工具QT Assistant文档查询QT Designer(界面设计)等QT Creater集成开发环境集成了一系列工具方便开发希望以后有机会更进一步探讨本文仅是QT入门希望能给大家提供一定的借鉴或参考。