上一页 1 2 3 4 5 6 7 8 9 10 ··· 13 下一页
  2012年3月21日
摘要: Qt提取不同文件格式(exe, dll等)中的图标icon 阅读全文
posted @ 2012-03-21 21:48 风行雪舞 阅读(1546) 评论(1) 推荐(0) 编辑
摘要: QTableWidget是QT程序中常用的显示数据表格的空间,很类似于VC、C#中的DataGrid。说到QTableWidget,就必须讲一下它跟QTabelView的区别了。QTableWidget是QTableView的子类,主要的区别是QTableView可以使用自定义的数据模型来显示内容(也就是先要通过setModel来绑定数据源),而QTableWidget则只能使用标准的数据模型,并且其单元格数据是QTableWidgetItem的对象来实现的(也就是不需要数据源,将逐个单元格内的信息填好即可)。这主要体现在QTableView类中有setModel成员函数,而到了QTableWidget类中,该成员函数变成了私有。使用QTableWidget就离不开QTableWidgetItem。QTableWidgetItem用来表示表格中的一个单元格,正个表格都需要用逐个单元格构建起来。 阅读全文
posted @ 2012-03-21 21:47 风行雪舞 阅读(1868) 评论(0) 推荐(0) 编辑
摘要: 题外话:何时使用 tr ? 在论坛中漂,经常遇到有人遇到tr相关的问题。用tr的有两类人: •(1)因为发现中文老出问题,然后搜索,发现很多人用tr,于是他也开始用tr •(2)另一类人,确实是出于国际化的需要,将需要在界面上显示的文件都用tr包起来,这有分两种:◦(2a) 用tr包住英文(最最推荐的用法,源码英文,然后提供英文到其他语言的翻译包) ◦(2b) 用tr包住中文(源码用中文,然后提供中文到其他语言的翻译包) 阅读全文
posted @ 2012-03-21 21:29 风行雪舞 阅读(1287) 评论(0) 推荐(0) 编辑
摘要: 今天下午动手实践了一下QProgressBar,遇到的问题比较多,浪费了不少时间,但收获同样颇多... 程序界面如下: 阅读全文
posted @ 2012-03-21 21:26 风行雪舞 阅读(1364) 评论(0) 推荐(0) 编辑
摘要: Qt提供了QFile类来进行文件处理,为了更方便地处理文本文件或二进制文件,Qt还提了QTextStream类和QDataStream类,处理临时文件可以使用QTemporaryFile,获取文件信息可以使用QFileInfo ,处理目录可以使用QDir.监视文件和目录变化可以使用QFileSystemWatcher. 读写文本文件 QFile类提供了读写文件的接口,QFile类可以读写文本文件,二进制文件和Qt资源文件,也可以使用更方便的QTextStream,QDataStream类读取文本文件和二进制文件,要打开一个文件,可以在构造函数中指定文件名,也可以在任何时候使用setFileName()函数设置文件名,打开文件使用open函数,关闭文件使用close函数。QFile中可以使用QIODevice中继承的readLine()函数读写文本文件的一行 阅读全文
posted @ 2012-03-21 21:07 风行雪舞 阅读(979) 评论(0) 推荐(1) 编辑
摘要: 各种数据类型的相互转换 char * 与 const char *的转换 char *ch1="hello11"; const char *ch2="hello22"; ch2 = ch1;//不报错,但有警告 ch1 = (char *)ch2; char 转换为 QString 其实方法有很多中,我用的是: char a='b'; QString str; str=QString(a); QString 转换为 char 方法也用很多中 QString str="abc"; char *ch; ch = str.toLatin1.data(); QByteArray 转换为 char * char *ch;//不要定义成ch[n]; QByteArray byte; ch = byte.data(); char * 转换为 QByteArray char *ch; QBy 阅读全文
posted @ 2012-03-21 21:01 风行雪舞 阅读(971) 评论(0) 推荐(0) 编辑
摘要: 使用 C 语言的 fopen 打开文件时,可以指定的 mode 有 12 个,其中 6 个包含"b"使用 C++ 的 fstream 打开文件时,可用的模式组合有 24 个(?),其中 12 个包含"binary"使用 python 的 open 打开文件,除了可以使用 C 中的 12 个模式外,还可以使用"U" 或 "rU"使用 Qt 库的 QFile 打开文件时,可以指定QIODevice::Text或不指定...如此种种,看起来是如此的复杂,难怪很多刚接触编程的网友都不相信(或者不想相信): 阅读全文
posted @ 2012-03-21 20:54 风行雪舞 阅读(962) 评论(0) 推荐(0) 编辑
摘要: QFile类是操作文件的输入输出设备类。QFile是一个用来读写二进制文件与文本文件的输入输出设备。QFile可以被自己或更方便的类 DataStream或QTextStream使用。文件的名字通常通过构造传递,但可以通过setName()来修改。你可以使用exists()来检查文件是否存在,并且通过remove()来移除一个文件。文件通过open()被打开,通过close()来关闭,通过flush()来更新。数据通常使。QDataStream或QTextStream来被读出写入,但你可以通过readBlock()和readLine()读出,通过 writeBlock()写入。 阅读全文
posted @ 2012-03-21 20:46 风行雪舞 阅读(7783) 评论(0) 推荐(1) 编辑
  2012年3月20日
摘要: #ifndefQQUSERITEM_H就发生下列错误 #defineQQUSERITEM_H#includeclassQQUserItem:publicQTreeWidgetItem{Q_OBJECTpublic:explicitQQUserItem(QQUserItem*parent=0);signals:publicslots:};#endif//QQUSERITEM_H debug\moc_QQUserItem.cpp:41:8: error: 'staticMetaObject' is not a member of 'QTreeWidgetItem' ..\..\Qt\4.6.3\include/QtCore/http://www.cnblogs.com/src/corelib/kernel/qobject.h: In member function 阅读全文
posted @ 2012-03-20 18:49 风行雪舞 阅读(542) 评论(0) 推荐(0) 编辑
摘要: 在QT中可以用QProgressBar或着QProgressDialog来实现进度条。 QProgressBar的使用 首先在designer中拖一个按钮和进度条部件,按下面初始化 ui-progressBar-setRange(0,50000-1); ui-progressBar-setValue(0); 阅读全文
posted @ 2012-03-20 18:47 风行雪舞 阅读(1261) 评论(0) 推荐(0) 编辑
摘要: table widget是qt4才引入的一个控件。大体的做法就是使用QItemDelegate类,然后在 createEditor接口返回想要使用的QWidget。 还有种简单的方法是使用QTableWidget的setCellWidget的接口直接将QWidget设置进去。 阅读全文
posted @ 2012-03-20 18:38 风行雪舞 阅读(836) 评论(0) 推荐(0) 编辑
摘要: 先上代码,这里作说明。 1)将该段代码放在需要设置背景图片的构造函数中 2)需要包含头文件 #include #include #include 3)逻辑: 首先构造一个QPixmap对象,可以认为是一个位图。 然后将该Widget的调色板palette取出来放在bgPalette里面 修改调色板,用Brush将我们刚才创建的图片刷到调色板上去 最后重置Widget的调色板 4)注意: 如果背景图片是png等含有透明部分的图片,还要用setMask()函数将背景的掩码设置成和图片一样的,方可显示透明色。 阅读全文
posted @ 2012-03-20 18:34 风行雪舞 阅读(4739) 评论(0) 推荐(0) 编辑
摘要: Qt中如何 编写插件 加载插件 卸载插件是本文要介绍的内容。Qt提供了一个类QPluginLoader来加载静态库和动态库,在Qt中,Qt把动态库和静态库都看成是一个插件,使用QPluginLoader来加载和卸载这些库。由于在开发项目的过程中,要开发一套插件系统,就使用了Qt的这套类库。 一 编写插件 编写一个Qt的插件需要以下步骤 1.声明一个插件类, 2.定义一个类,实现这个插件类定义的接口,定义的这个类必须从QObject集成下来。 3.使用Q_INTERFACESQ_INTERFACES()告知Qt的元系统这个接口的存在 阅读全文
posted @ 2012-03-20 05:37 风行雪舞 阅读(1560) 评论(0) 推荐(0) 编辑
摘要: // 单列宽度 ui.tableWidget.setColumnWidth(column, width); // 表格适应内容 ui.tableWidget.resizeColumnsToContents(); // 表格适应内容 指定列 ui.tableWidget.resizeColumnToContents(column); 阅读全文
posted @ 2012-03-20 05:30 风行雪舞 阅读(1386) 评论(0) 推荐(0) 编辑
摘要: 我在用class My_Node : public QGraphicsItem,public QObject来生成自己的类时,想使用信号和槽机制,但这是dys_node.h中没有Q_OBJECT,不能使用信号槽。我将Q_OBJECT加上之后,出现几个不知道是什么的错误。然后我将工程目录下的Makefile删除,然后重新编译、链接文件,刚才的错误消失了,但出现如下三个错误: error: 'staticMetaObject' is not a member of 'QGraphicsItem' error: 'qt_metacast' is not a member of 'QGraphicsItem' error: 'qt_metacall' is not a member of 'QGraphicsItem' 阅读全文
posted @ 2012-03-20 05:27 风行雪舞 阅读(2513) 评论(0) 推荐(0) 编辑
摘要: step into就是单步执行,遇到子函数就进入并且继续单步执行; step over是在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。 step out就是但单步执行到子函数内时,用step out就可以执行完子函数余下部分,并返回到上一层函数。 step into:进入子函数 step over:越过子函数,但子函数会执行 step out:跳出子函数 阅读全文
posted @ 2012-03-20 05:27 风行雪舞 阅读(2832) 评论(0) 推荐(0) 编辑
摘要: 做串口通信时,碰到这样的问题,在Qt的界面中,我用QLineEdit对象负责显示发送和接收的文本,对其中的数据进行读取和显示使用的数据类型都是QString;但是,在对串口设备进行读写时,数据使用的形式都是char型指针(不知道是不是我理解的不透彻),所以就要解决QString和char型数组之间的转换。 查阅了一些资料,并经过自己的验证,找到了下面的解决办法: 阅读全文
posted @ 2012-03-20 05:25 风行雪舞 阅读(19224) 评论(1) 推荐(0) 编辑
摘要: 信号和槽机制是 QT 的核心机制,要精通 QT 编程就必须对信号和槽有所了解。信号和槽是一种高级接口,应用于对象之间的通信,它是 QT 的核心特性,也是 QT 区别于其它工具包的重要地方。信号和槽是 QT 自行定义的一种通信机制,它独立于标准的 C/C++ 语言,因此要正确的处理信号和槽,必须借助一个称为 moc(Meta Object Compiler)的 QT 工具,该工具是一个 C++ 预处理程序,它为高层次的事件处理自动生成所需要的附加代码。 在我们所熟知的很多 GUI 工具包中,窗口小部件 (widget) 都有一个回调函数用于响应它们能触发的每个动作,这个回调函数通常是一个指向某个函数的指针。但是,在 QT 中信号和槽取代了这些凌乱的函数指针,使得我们编写这些通信程序更为简洁明了。 信号和槽能携带任意数量和任意类型的参数,他们是类型完全安全的,不会像回调函数那样产生 core du 阅读全文
posted @ 2012-03-20 05:14 风行雪舞 阅读(542) 评论(0) 推荐(1) 编辑
摘要: 信号与槽机制是比较灵活的,但有些局限性我们必须了解,这样在实际的使用过程中做到有的放矢,避免产生一些错误。下面就介绍一下这方面的情况。 1 .信号与槽的效率是非常高的,但是同真正的回调函数比较起来,由于增加了灵活性,因此在速度上还是有所损失,当然这种损失相对来说是比较小的,通过在一台 i586-133 的机器上测试是 10 微秒(运行 Linux),可见这种机制所提供的简洁性、灵活性还是值得的。但如果我们要追求高效率的话,比如在实时系统中就要尽可能的少用这种机制。 2 .信号与槽机制与普通函数的调用一样,如果使用不当的话,在程序执行时也有可能产生死循环。因此,在定义槽函数时一定要注意避免间接形成无限循环,即在槽中再次发射所接收到的同样信号。例如 , 在前面给出的例子中如果在 mySlot() 槽函数中加上语句 emit mySignal() 即可形成死循环。 3 .如果一个信号与多个槽相联系的 阅读全文
posted @ 2012-03-20 05:13 风行雪舞 阅读(344) 评论(0) 推荐(1) 编辑
摘要: 根据《C++ GUI Programming with Qt 4,Second Edition》中第5章的“在Qt设计师中集成自定义窗口部件”小节,使用插件法生成的窗口部件利用QT Creator编译后,在QT Creator中的设计师是找不到的,但是在打开/qt/bin中的Qt designer是可以找到该插件的。 如果在Qt designer插入该插件,然后在QT Creator中编译是通不过的。 照成这种问题的原因是QT Creator和Qt designer的窗口部件插件是存在不同路径的.Qt designer是在/qt/plugins/designer中,而QT Creator是在/bin/designer中,解决办法只需将/qt/plugins/designer中的全部内容复制到setuproot 阅读全文
posted @ 2012-03-20 05:11 风行雪舞 阅读(864) 评论(0) 推荐(1) 编辑
摘要: 本文介绍的是如何让插件加载到Qt Designer,插件是一种遵循一定规范的应用程序接口编写出来的程序,对于Qt Designer不多做介绍了,先看内容吧。本文介绍的是如何使自定义的插件加载到Qt Designer,对于插件,插件是一种遵循一定规范的应用程序接口编写出来的程序。很多软件都有插件,插件有无数种。例如在IE中,安装相关的插件后,WEB浏览器能够直接调用插件程序,用于处理特定类型的文件。第一步,需要创建自定义窗口部件。可以对一个已经存在的窗口部件进行子类化也可以直接对Qwidget 进行子类化,就可以创建自定义的窗口部件。我是采用子类化Qwidget的方法创建的窗口部件。 阅读全文
posted @ 2012-03-20 05:10 风行雪舞 阅读(995) 评论(0) 推荐(1) 编辑
  2012年3月16日
摘要: 大家好,在学习Qt4.7的移植时按照TQ6410_QT4.7移植手册的Led测试例程开发,目标板是TQ2440,使用内核EmbedSky-leds为设备文件,改变LED1 ——LED4的状态时开发板上的LED不受控制。界面程序如下: 1 #include "ledtest.h" 2 #include "ui_ledtest.h" 3 4 #include 5 #include 6 #include 7 #includestring.h&g 阅读全文
posted @ 2012-03-16 05:47 风行雪舞 阅读(1299) 评论(0) 推荐(1) 编辑
摘要: 基于arm + linux的嵌入式软件开发,基本上的内容主要是:u-boot的移植,kernel的裁剪和相关驱动程序的设计,root-fs的制作,应用程序的设计,其中,应用程序主要包含两方面的内容:Gui的设计和逻辑控制程序的实现。在整个开发中,具有相当代码量的部分也就这么两个方面:驱动程序、应用程序。一般的开发板都有相关配套的底层驱动程序例程,开发者可稍加修改在工程项目中加以使用(其实我不知道这样是不是会触犯什么只是产权之类的东东,先凑着用吧)。第一,驱动程序的设计。很容易想到,Led在板子上是直接与CPU的GPIO引脚相接,即对相应GPIO的控制也就是对外设Led的控制,以下是Led作为. 阅读全文
posted @ 2012-03-16 05:44 风行雪舞 阅读(1352) 评论(0) 推荐(0) 编辑
  2012年3月15日
摘要: 今天在使用addStretch,布局的时候,发现addStretch竟然是可以平均分配的,有意思。比如:QVBoxLayout *buttonLayout = new QVBoxLayout; buttonLayout->addStretch(1); buttonLayout->addWidget(Button1); buttonLayout->addStretch(1); buttonLayout->addWidget(Button2); buttonLayout->addStretch(1); buttonLayout->addWidget(Button 阅读全文
posted @ 2012-03-15 17:38 风行雪舞 阅读(1112) 评论(0) 推荐(0) 编辑
摘要: Qt 程序在Windows 下发布是本文要介绍的内容,不多说了,先来看内容,针对这个问题,其实 Qt 的 manual 中解释的已经比较清楚了。下面是我根据自己的理解和实验后写的东西,希望比Qt文档容易理解一点。下面不涉及静态编译(静态编译可以看看这儿),只包含动态编译(也就是Qt默认的情况),主要又分 mingw 和 msvc 两种情况:Mingw首先,我们需要生成 release 模式的可执行程序(不少同学抱怨,一个小小程序却需要100多M的动态库,就是因为用的debug)qmake mingw32-makerelease而后将 可执行文件 与 需要的动态库放到同一个文件夹下,一般需要my 阅读全文
posted @ 2012-03-15 04:56 风行雪舞 阅读(454) 评论(0) 推荐(0) 编辑
摘要: 为什么要在VS2008中使用QT静态编译呢?很简单,因为VS2008编译器编译出来的文件比mingw编译的要几乎小一半。好了现在我们来做些准备工作,VS2008自然要安装的,然后打上SP1的补丁。然后我们要到QT主页下载,QT4.7.4版的源码包qt-everywhere-opensource-src-4.7.4.zip,因为用源码包编译没那么容易出错;另外还有QT for VS 的插件qt-vs-addin-1.1.9.exe,这两个准备好就可以开始安装了。第一步:把源码包qt-everywhere-opensource-src-4.7.4.zip解压到D盘,把目录名字qt-everywhe 阅读全文
posted @ 2012-03-15 04:55 风行雪舞 阅读(784) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://blog.csdn.net/cjyl25/article/details/6899229首先是准备工作,去QT主页下载独立的QT类库安装包以及完整QT SDK安装包,还有QT Creator for windows 版下载地址:http://qt.nokia.com/downloads-cn 最新是 4.7.4 版 还有一个mingw 4.4.5 静态编译版,用来解决mingwm10.dll、 libgcc_s_dw2-1.dll,两个DLL依赖的问题下载地址是:http://code.google.com/p/qp-gcc/downloads/list四个文件分别是. 阅读全文
posted @ 2012-03-15 04:53 风行雪舞 阅读(718) 评论(0) 推荐(0) 编辑
摘要: 似乎一直没有静态编译Qt的需求:一不在没有管理员权限的机器上使用,二不制作绿色软件,三...。动态编译工作得很好,再配合 nsis 制作一个安装包,有什么必要静态编译呢?但论坛中似乎总是不停有人问到静态编译的问题,似乎遇到问题的人挺多,用百度或google搜索"Qt静态编译"也能搜到相当多的内容。正好利用周末时间,自己尝试编译一下,顺便整理一下,看看到底会发生什么(尽管以后还是用动态编译)。没特殊说明的话,以下讨论的是 MSVC2008 下的情况:静态编译?或许有两个层次:编译出的程序不依赖 QtCore4.dll、QtGui4.dll 等 Qt 的静态库编译出的程序不依赖 阅读全文
posted @ 2012-03-15 04:28 风行雪舞 阅读(1274) 评论(0) 推荐(0) 编辑
摘要: Table of Contents引用说明: 部署发布QT程序有两种方法 一、静态编译 1 编译QT。 2 编译程序。 3 加入插件 4 加入LIBS 5 解决MinGW的mingwm10.dll依赖问题 二、动态编译 引用说明:本文原址链接:http://hi.baidu.com/jzinfo/blog/item/c17c3f6d4ff439fe431694c3.html以下包括了部分网上收集的,以及qt帮助里的内容(Deploying an Application on Qt/Windows)部署发布QT程序有两种方法第一种,静态编译,可生成单一的可执行文件。 第二种,动态编译,需同时附上 阅读全文
posted @ 2012-03-15 04:26 风行雪舞 阅读(543) 评论(0) 推荐(0) 编辑
  2012年2月6日
摘要: 基础如先前所提到的,类图的目的是显示建模系统的类型。在大多数的 UML 模型中这些类型包括:类接口数据类型组件UML 为这些类型起了一个特别的名字:“分类器”。通常地,你可以把分类器当做类,但在技术上,分类器是更为普遍的术语,它还是引用上面的其它三种类型为好。类名类 的 UML 表示是一个长方形,垂直地分为三个区,如图 1 所示。顶部区域显示类的名字。中间的区域列出类的属性。底部的区域列出类的操作。当在一个类图上画一个类元素时,你必须要有顶端的区域,下面的二个区域是 可选择的(当图描述仅仅用于显示分类器间关系的高层细节时,下面的两个区域是不必要的)。图 1 显示一个航线班机如何作为 UML 类 阅读全文
posted @ 2012-02-06 19:35 风行雪舞 阅读(211) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 10 ··· 13 下一页
无觅相关文章插件,快速提升流量