QT学习笔记1】的更多相关文章

应大家的要求,还是把完整的project文件贴出来,大家省点事:http://www.kuaipan.cn/file/id_48923272389086450.htm 先看看执行效果,我用的群创7寸屏,主机是mini2440,分辨率是800*480,程序写比較粗糙,但对刚開始学习的人还是有一点启示,大家一起进步. qt中提供了QGphicsView,QGraphicsScene,QGraphicsItem,QGraphicsPixmapItem是QGraphicsItem的子类 分辨创建它们的实…
Qt学习笔记4-Widget布局管理       以<C++ GUI Programming with Qt 4, Second Edition>为参考 实例:查找对话框 包含三个文件,finddialog.h,finddialog.cpp及main.cpp. //finddialog.h代码 #ifndef FINDDIALOG_H#define FINDDIALOG_H #include <QDialog> class QCheckBox;class QLabel;class…
QT学习笔记(一)--Helloworld 一.调试的基本方法: Log调试法 --在代码中加入一定的打印语句 --打印程序状态和关键变量的值 断点调试法: --在开发环境中的对应代码行加上断点 --当程序运行到断点行时,程序暂停运行 --需要时刻加上条件断点,当条件满足才暂停程序的运行 二.Qt Creator工程管理 2.1 一个Qt Creator工程包含不同类型的文件 --.pro项目描述文件:是核心文件 --.pro.user 用户配置描述文件:自动生成 --.h头文件 --.cpp源…
笔者最近用Qt写公司的考勤机.本来要求是要基于frameBuffer下用自己开发的easyGUI来进行上层应用开发,但是考虑到easyGUI提供的接口不是很多,就考虑用Qt来开发,顺带练练手. 废话不多说,马上进入主题. 一.QtSql模块 Qt为数据库访问提供的QtSql模块实现了数据库和Qt应用程序的无缝集成,同时为开发人员提供了一套与平台无关和具体所用数据库均无关的调用接口.这使得开发人员只需掌握基本的SQL语句,就能进行简单的数据库应用程序开发.如下表所示,QtSql模块由3部分组成.…
学习笔记第二篇,利用Qt实现选项卡式的页面,效果如图1.1-图1.3所示.程序实现的功能是通过点击状态栏实现不同页面的切换,实际上Qt中自带有Tab选项卡式的控件,本文利用StackWidge实现类似的页面切换功能.本文的开发思路以及页面代码参考了陆文周主编的<Qt5开发及实例(第3版)>(中国工信出版社). 图1.1 基本信息界面 图1.2 联系方式界面 图1.3 详细资料界面 本文软件的框架如图1.4所示,下面从最下层的内容开始介绍. 图1.4 软件开发框架 1.底层页面的构建 最底层的页…
Qt的简介: Qt是一个跨平台的C++ GUI库实现,原本只是以为它只提供一些图形接口,看来我还是低估了它,采用文档Qt学习之路2开始学习,不知道这个文档是不是有点老了,管他呢,先了解下. 搭建环境:       简单了解了下,就开始搭建环境做写个helloworld吧,我这里用的是Qt5.2.1,首先要安装Qt SDK,然后是Qt creator这个开发环境(IDE).应该就够了. 安装好之后打开Qt creator简单配置一下,工具->选项->Qt版本,编译器,我这里直接是用的VS2010…
http://blog.csdn.net/jocyln9026/article/details/8575218 关于Qt Qt是1991年由Trolltech公司开发的一个跨平台的C++图形用户界面应用程序框架.它的最大特点是跨平台,"一次编写,随处编译"的跨平台解决方案使应用程序能完美运行于Windows.Mac OS .Linux.Embedded Linux.HP-UX及其他基于X11的众多UNIX平台之上. Qt开发平台曾开发出众多知名软件,比如Opera.Google Ear…
不准备用MFC了,想切换到QT.所以跟着网上的一个笔记学习. 1 开发环境是VS2008+QT4.7+VassistX 具体如何配置看这个帖子:http://qimo601.iteye.com/blog/781566 http://www.kavenblog.com/?p=272 2 配置完成之后就可以用VS2008进行QT程序的开发了. 学习之路中的(2)(3) 任务是helloword ,首先建立一个GUI的工程,选择mainwindows类.代码如下: #include "hellowor…
////////////2015/08/06/////////////////// ///////////by xbw////////////////////////// //////////环境 Qt Creator 5.3.1//// 最终有时间好好学习一下QT了,在这之前就对QT强大的图形界面有所了解,以下记一下笔记啦. 第一节 UI 一步步来,第一次嘛. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsiz…
关于Qt中窗口部件的学习 今天开始学习Qt的窗口部件,领略一下Qt的神奇之处,记得2012年的那年冬天,我还学Java呢,现在基本上和Java说再见了,不过对于嵌入式的开发Qt还是举足轻重的,我想趁着假期的时间,好好学习.考研之后发现一个问题,无论当初你学的有多明白,总会忘记,最好的方法就是将他们记录下来,甚至写下你当时的心情,如果有一天你需要了,回过头来看看,是一笔不错的财富. 1. QDialog类对话框 1.1 模态和非模态对话框 对于对话框,有模态(modal)和非模态(modeless…
学习了一下ListWidget控件的使用,做一个小功能增删改 先把代码分解最后给出完整代码 在窗体上添加一个ListWidget 一个Horizontal Specer和  三个PushButton 效果如下 因为构造函数中的SetupUi(this)会自动将符合on_objectName_signalName()命名 的任意槽与相应的objectName的signalName()信号连接到一起 我就直接在.h文件里添加槽的声明 private slots: void on_btn_AddEve…
关于Qt在这里不做过多介绍,吸引我的地方是有几点: 1.用C++开发语言: 2.多平台(wWindows.MAC.Linux.Android等): 3.界面所见几所得.其他的可以百度上了解: 从本文开始学习Qt,Qt最开始是C++的图形类库,类似Windows上跑其的类库MFC一样,MFC也就是VC++,但是VC++提供了一套完整的集成开发工具如VC6.0,他包括了MFC类库.界面编辑器.编译器.工程管理器.编辑器.调试器等.而Qt最开始只提供了Qt类库.界面编辑器,其他诸如编译器.工程管理器.…
Part 1基本思路 学习目标:(熟练)使用 qt 制作符合要求的 ui FAQ:1)学习Qt5还是Qt4? 重要的是学习的方法而不是内容,掌握了正确的学习方法就可以很快完成另一者的学习,综合来看,Qt4的资料较为全面,入门起来应该比较快. 达成方式:学会使用 assistant 找到合适的 class 和 子函数 即可 :先决条件:知道都有什么可用的 class 和 对应的子函数 练习方式:实战(教材结合assistant) 以熟悉 class 和 子函数 为主 达标要求: 完成 基础 部分…
以下笔记为在看书和实践的过程中的部分记录总结: 0. 窗口布局 1) 支持绝对布局和布局管理器布局; 2) 绝对布局不够灵活.无法自动调整大小,需要手动编写代码调整: 3) 布局管理器管理布局比较灵活.可自动调整管理的其下部件大小.位置: 4) 布局管理器目前有基本布局QBoxLayout(水平布局QHBoxLayout.垂直QVBoxLayout).栅格布局QGridLayout.表单布局QFormLayout.栈布局QStackedLayout: 5) 还有其他的布局,不过一般用于其他目的,…
因为公司的项目需要,今天开始重新学习已经忘干净了的QT, 说起qt之前在学校刚接触的时候就打心底里喜欢这个编辑器, 因为一直使用vs做项目,面对着黑洞洞的窗口总让人不舒服, 自从接触了qt感觉迎来了曙光一般.现在又把QT捡起来,顺便 将自己遇到的问题都记录下来,一方面是方便自己,另外希望能够 帮助到更多的小伙伴!共勉!!! 遇到问题:今天刚装好QT,发现直接点击运行却没反应. 如下图: 后来发现原来是qt项目的保存路径中有中文,因为qt保存路径不能有中文,所有将中文去掉就好了. 将 改为 就能正…
之前学习qt4的时候,播放音频用的是phonon播放后端插件+mplayer. 今天改用qt5了.qt5中去掉了phonon模块加了multimedia.但是依然无法播放音乐,因为没有ffmpge suplayer gstreamer之类的解码器.qt只是封装了一层虚函数的调用方法,没底层实现. 这里我用了QtAV. QtAV资料: http://www.oschina.net/p/qtav?fromerr=hbTpsWsY http://www.qtav.org/ https://github…
事件(event) 一般来说,使用Qt编程时,我们并不会把主要精力放在事件上,因为在Qt中,需要我们关心的事件总会发出一个信号.比如,我们关心的是QPushButton的鼠标点击,但我们不需要关心这个鼠标点击事件,而是关心它的clicked()信号.这与其他的一些框架不同:在MFC中,你所要关心的是鼠标左键按下这个事件.总的来说,如果我们使用组件,我们关心的是信号槽:如果我们自定义组件,我们关心的是事件.因为我们可以通过事件来改变组件的默认操作.比如,如果我们要自定义一个QPushButton,…
Qt标准对话框之QFileDialog //QString path=QFileDialog::getOpenFileName(this,tr("open image"),".",tr("Image file(*.jpg *.png *bmp)")); QFileDialog *fileDialog=new QFileDialog(this); fileDialog->setWindowTitle(tr("open image&q…
顶层窗口-MainWindow 新建项目,选择基类的时Base Class是QMainWindow 最上面是Window Title,用于显示标题和控制按钮,比如最大化.最小化和关闭等:下面一些是Menu Bar,用于显示菜单:再下面一点事Toolbar areas,用于显示工具条,注意,Qt的主窗口支持多个工具条显示,因此这里是ares,你可以把几个工具条并排显示在这里,就像Word2003一样:工具条下面是Dock window areas,这是停靠窗口的显示区域,所谓停靠窗口就是像Phot…
对话框 新建了一个对话框,在新建项目选择类型时是Dialog即可. 添加的代码如下,注意QCheckBox 并没有添加头文件定义,只是加了类的前向声明.因为我们仅仅使用的是指针,并不涉及到这些类的函数,因此并不需要include它们的头文件——当然,你想直接引入头文件也可以,不过那样的话编译速度就会慢一些.不过实验发现 还是需要添加头文件 #ifndef FINDDIALOG_H #define FINDDIALOG_H #include <QtGui/QDialog> #include &q…
初探信号槽 代码如下: QPushButton *button=new QPushButton("quit"); QObject::connect(button,SIGNAL(clicked()),&a,SLOT(quit())); button->show(); QObject是所有类的根.Qt使用这个QObject实现了一个单根继承的C++.它里面有一个connect静态函数,用于连接信号槽.注意是静态函数::static. 发出信号的对象指针: button SIG…
Qt5 移除了QHttp是因为功能重复 用QNetworkAccessManager完全能搞定 新建一个控制台应用程序 看一下QNetworkAccessManager的帮助文档 需要添加Qt + =network 新建一个类 .h文件 #ifndef DOWNPAGES_H #define DOWNPAGES_H #include<QNetworkAccessManager> #include <QObject> class DownPages : public QObject…
主要说Qt的以下几种容器 1.QList<T> 2.QLinkedList<T> 3.Map<T> 和一些常用的容器方法的使用 qSort qCopy qFind 1.QList<T>泛型集合是最常用的一种容器 看一下它的常用 操作 添加删除和两个迭代器 QListIterator和QMutableListIterator #include <QCoreApplication> #include<QList> #include<…
看一下效果很简单的一个小功能 先说分部讲一下过程 再给出详细代码 添加数据 MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); ui->tableWidget->setColumnCount(); ui->tableWidget->setRowCount(); ui->tableWidget->setHo…
Qt中的线程是与平台无关的 QThread 提供了创建一个新线程的方法 新建一个线程,继承QThread并重写它的run()当调用 start()函数时会调用重载的run()函数 例: #ifndef MYTHREAD_H #define MYTHREAD_H #include <QThread> class MyThread : public QThread { Q_OBJECT public: bool stop ; ); void run(); signals: public slots…
Qt的几种MessageBox 1.Infomation类型 QMessageBox::information(this,tr("hello"),tr("title")); 2.Question类型 QMessageBox::StandardButton returnBtn; returnBtn = QMessageBox::question(this,tr("hello have problem?"),tr("error!"…
在窗体上放一个TreeWidget控件和四个PushButton加一个Horizontal Spacer 布局如图 给树添加元素节点的方法和实现 .h文件 QTreeWidgetItem * AddTreeRoot(QString name,QString desc); QTreeWidgetItem * AddTreeNode(QTreeWidgetItem *parent,QString name,QString desc); .cpp文件 QTreeWidgetItem * TreeVie…
今天想在Qt中使用Lua进行数据操作 结果发现在Qt中使用Lua的文章较少,虽然很简单,但是还是写出来提供入门,顺便记录一下 我使用的是Qt Creator 3.4.2,用的是mingw4.9.2的编译器 我在Lua官网下载lua版本是5.3.1 首先,在要Qt中进行编译Lua,拿到.a和dll这两个文件 在Qt Creator->文件->新建文件或项目->Library->C++库,接下来根据情况一路下一步完成创建 然后,右键自己的项目,选择添加现有文件,添加下载好的Lua文件中…
1.模态和非模态的区别:非模态可以同时操作两个窗口,模态的只能在顶层窗口关闭之后才能使用其他窗口 //同时显示出widget和dialog窗口,非模态     QDialog *dialog = new QDialog(this);     dialog->show(); //同时显示出widget和dialog窗口,模态     QDialog *dialog = new QDialog(this);     dialog->setModal(true);     dialog->sh…
继承自QObject 的Qt类都具有支持信号和槽的能力,并且在子类的实现代码中直接使用connect()函数 pwdLineEdit->setEchoMode(QLineEdit::Password); QLineEdit::Normal 默认显示方式,显示用户实际输入的内容 QLineEdit::Password 用*号代替输入内容 QLineEdit::NoEcho 不显示输入任何内容 QLineEdit::PasswordEchoOnEdit 仅仅用户在行编辑框里编辑文本时才显示用户输入的…