qt
文章平均质量分 62
liulihuo_gyh
这个作者很懒,什么都没留下…
展开
-
(转)VS2013+QT5.7每次运行时都会重新Moc‘ing 文件的解决办法
但是点击【运行调试】的时候,出现以下信息:1> Moc'ing QtGuiUserManage.h...1> moc_QtGuiUserManage.cpp12只要是运行就会出现这样的问题,每次都会出现,一点例外都没有。问题原因:这是由于项目设置的Qt的Moc目录和这个头文件设置的Moc头文件目录不一致造成的;项目中的moc目录如下:当前这个头文件的moc目录:鼠标右键查看看到了吗?头文件Moc目录比工程中的moc目录多一级。所以每次运行的时候都会在重新moc以下...转载 2021-04-14 22:49:14 · 611 阅读 · 0 评论 -
qt实现透视旋转
Panel::keyPressEvent(QKeyEvent *event){qDebug("event >>>>>>>>>>>>>>>modifier %x\n",event->modifiers());QTransform transform ;static int degree = 0;static int zdegree = 0;if (event->modifie转载 2012-10-10 11:17:22 · 876 阅读 · 0 评论 -
Qt 编程点滴1
MinGw + CodeBlock + Qt 4.5类定义后面要加";"函数的实现部分,如果定义部分有void,则实现部分不能少;检查include文件有无少;error: request for member `show\\\' in `((MainWindow*)this)->MainWindow::rightform\\\', which is of non-class ty转载 2012-10-12 09:17:07 · 631 阅读 · 0 评论 -
Qt 编程点滴 2
删ITEM方法:把把ITEM的数据挂到指针上,先删ITEM,然后再删除指针如果发生 no such file or directory not find(报Qt核心文件错)有可能是project --properties--projects settings中的"This is a custom MakeFile"没有勾选;检查.pro文件是 INCLUDEPATH += DE转载 2012-10-12 09:18:50 · 456 阅读 · 0 评论 -
Qt 编程点滴6
移交控制权qApp.processEvents(); 相当于delphi中的application.processmessage;Qt Script Debugger — 用于调试Qt Script的工具,可以单步运行,查看输出等。Qt文档里有很详细的一篇专门讲这个的,有兴趣的来看下: Qt Script Debugger ManualCom口大于10需经特殊处理: \\\\.转载 2012-10-12 09:21:27 · 766 阅读 · 0 评论 -
Qt 编程点滴7
QPainterPath 画出的图形会闪烁的问题:用下面的写法画出的图形会闪烁class MyClass: public QWidget { public: MyClass(QWidget*); private: QPainterPath* route; void paintEvent(QPaintEvent*e); }; MyClass::MyClas转载 2012-10-12 09:22:10 · 418 阅读 · 0 评论 -
Qt 编程点滴8
如何让Qt程序只运行一次:以下代码在Ubuntu,win下测试通过:#include #include #include #include #include int main(int argc, char *argv[]) { QApplication app(argc, argv); QSystemSemaphore sema("JAMKey"转载 2012-10-12 09:22:45 · 562 阅读 · 0 评论 -
Qt 编程点滴9
QString怎么转换成charQString str ="123456"; str.toAscii().data(); //this return a char* or const char* str.toAscii() return a QByteArray QString Str; //Str = "asdfasdfasdf"; Str->toString().c_str();转载 2012-10-12 09:23:26 · 511 阅读 · 0 评论 -
Qt 编程点滴3
静态成员变更量aa.h class AA { static char p[13]; }; aa.cpp char AA::p[13]; 如果没在cpp中增加"char AA::p[13];",则编译时会提示"undefined reference to...."的错误b.h接口中引用a.h接口,使用时必须加上include "a.h" include "b.h"转载 2012-10-12 09:19:33 · 831 阅读 · 0 评论 -
Qt 编程点滴4
编译win32 中的 dll工程配置方法(以skypebackend为例):因为工程中的代码全是标准C++的代码,所以编译方式跟Qt有点不一样,Project-properties...-Project settings页中的"This is a custom Makefile"前面的方框不要勾选Project-properties...-Build targets 右边中的"Type转载 2012-10-12 09:20:10 · 485 阅读 · 0 评论 -
Qt 编程点滴 5
QTreeWidget/QTreeView中的CheckStatus状态的级联更新void GpsSideBar::on_treeWidget_itemChanged ( QTreeWidgetItem * item, int column ) { if (!item || column != 0) return; Qt::CheckState sta转载 2012-10-12 09:20:50 · 537 阅读 · 0 评论 -
Qt 编程点滴 10
qss 收集:Setting QObject propertiesFrom 4.3 and above, any designable Q_PROPERTY can be set using the qproperty- syntax. For example,MyLabel { qproperty-pixmap: url(pixmap.png); } MyGroupBox {转载 2012-10-12 09:24:04 · 402 阅读 · 0 评论 -
断言assert()使用简介
assert()是一个调试程序时经常使用的宏,在程序运行时它计算括号内的表达式,如果表达式为FALSE (0), 程序将报告错误,并终止执行。如果表达式不为0,则继续执行后面的语句,它的作用是终止程序以免导致严重后果,同时也便于查找错误。 所需头文件:#include 报告错误的条件:assert(0); 说明:在某些资料上可能会说,assert()只有在Debug版本转载 2012-10-17 09:23:34 · 710 阅读 · 0 评论 -
QT+OPenGL绘图例子
环境:Qt4.7.3 + VS2008效果图: //*************** glutttt.h#ifndef GLUTTTT_H#define GLUTTTT_H #include #include #include #include #pragma comment(lib, "glaux.lib") class glu原创 2012-10-25 11:06:59 · 9729 阅读 · 3 评论 -
Qt编码风格
如果它使你的代码看起来不好,你可以打破任何一个规则 。缩进采用4个空格空格,不要用TAB!变量每行一个变量尽可能避免短的变量名单字符的变量只在临时变量或循环的计数中使用等到真正需要使用时再定义变量// Wrongint a, b;char *c, *d; // Correctint height;int width;char *nam转载 2012-11-05 13:18:06 · 334 阅读 · 0 评论 -
Qt 学习之路 2(6):Qt 模块简介
Qt 5 与 Qt 4 最大的一个区别之一是底层架构有了修改。Qt 5 引入了模块化的概念,将众多功能细分到几个模块之中。Qt 4 也有模块的概念,但是是一种很粗的划分,而 Qt 5 则更加细化。本节主要对 Qt 5 的模块进行一个简单的介绍,以便以后大家需要哪些功能的时候知道到哪个模块去寻找。Qt 5 模块分为 Essentials Modules 和 Add-on Modules 两部分。转载 2012-11-05 14:13:43 · 1265 阅读 · 0 评论 -
QWidget,QMainWindow和QDialog的区别 .
转自http://blog.csdn.net/ikahn/article/details/6706284在创建Qt Gui Application时,总会让你选择在QWidget,QMainWindow和QDialog中选择一个Base Class。这三个类具体有什么区别呢?在Qt的手册和网上找了一些资料。先看官方的手册:QWidget Class Referenc转载 2012-11-05 16:53:45 · 352 阅读 · 0 评论 -
QTextStream读取文件内容
QFile file("file.txt");if (!file.open(QIODevice::ReadOnly | QIODevice::Text))return;QTextStream in(&file); 1.QString QTextStream::read ( qint64 maxlen ) 读取txt文件maxlen个字符 QString line转载 2012-11-08 22:16:02 · 11736 阅读 · 2 评论 -
从char到QChar
char类型是c/c++中内置的类型,描述了1个字节的内存信息的解析。比如:char gemfield=’g’;那么在由gemfield标记的这块内存的大小就是1个字节,信息就是01100111,8位。再比如:char gemfield=’汉’;那么由gemfield标记的这块内存的大小依然是1个字节,存储的信息是:0xBA,这是因为在windows系统中,转载 2012-11-09 10:21:19 · 1323 阅读 · 0 评论 -
QT读取中文文件
虽然C++标准中有了文件读取的相关类,也很好用,但是在涉及到QT编程的时候却用起来不方便了,因为QT本身很多组件都是关联的自身的QString类型的字符串,所以再用C++本身String类型的时候就不是那么方便了,需要进行转化,这样给程序带来了复杂度,同时也带来了转化的开销,所以如果用QT开发,可以就用它本身所带的这些类型进行处理,形成一个系统,便于数据在程序之中的交互和共用。 QT很好,转载 2012-11-08 21:54:31 · 1295 阅读 · 0 评论 -
QTextCodec相关的new、delete问题一则 .
在 Qt之QTextCodec乱谈 一文中我们提到这个一样例子int main(int argc, char *argv[]){ QCoreApplication a(argc, argv); QTextCodec * codec = new DbzhangCodec; QTextCodec::setCodecForCStrings(codec);转载 2012-11-09 14:08:14 · 675 阅读 · 0 评论 -
Qt窗口中的一些小技术总结
//Qt主窗口没有最小化,最大化按钮且最大化显示 int main(int argc, char *argv[]) { QApplication a(argc, argv); TestQtForWinCE w; w.setWindowFlags(w.windowFlags()& ~Qt::WindowMaximizeButtonHint& ~Qt::WindowMinimize转载 2012-11-12 16:19:33 · 763 阅读 · 0 评论 -
Qt创建RadioButton
int main(int argc, char *argv[]) { QApplication app(argc, argv); QButtonGroup *bg1 = new QButtonGroup(&app); QButtonGroup *bg2 = new QButtonGroup(&app); QRadioButton *rb1 = n转载 2012-11-14 09:12:48 · 2275 阅读 · 0 评论 -
Qt:向QTextEdit中插入图片
@import url(http://www.cppblog.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);void UiUtil::showDetails(QTextEdit *edit,con转载 2012-11-14 09:48:52 · 5277 阅读 · 0 评论 -
Qt:使用Model-View,动态的加载显示数据
共有 main.cpp, Widget.h, Widget.cpp, Widget.ui, MyModel.h, MyModel.cpp 六个文件。可从此下载整个工程文件: /Files/biao/ModelDemo.zip关键在于Model中的数据是动态加载的,而不是一次性全加载到Model中。/****************************************转载 2012-11-14 10:01:12 · 4959 阅读 · 0 评论 -
Qt:创建SideBar
Qt:创建SideBar先看最终效果:@import url(http://www.cppblog.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);1. 使用Qt Creator创建GUI工程转载 2012-11-14 10:14:06 · 1901 阅读 · 0 评论 -
VS+QT没有PRO文件的有关问题之二(添加pri文件)
VS+QT没有PRO文件的问题之二(添加pri文件)今天需要搞一个全局热键,百度到可以使用qxtglobalshortcut( 从libqxt剥离出来的一个类)例程中调用的方法是在pro文件中将qxtglobalshortcut的pri文件include进来(qt基础知识之一)而QT VS-addin通过如下方式添加pri文件不幸的是,这个功能似乎有问题万幸转载 2012-11-14 11:13:27 · 3598 阅读 · 0 评论 -
Qt:给QLineEdit加上一个搜索按钮
效果图如下:工程文件:/Files/biao/SearchButton.7z/********************************************** * SearchButton.h *********************************************/#if转载 2012-11-14 09:54:41 · 1749 阅读 · 0 评论 -
Qt:header view与scrollbar的style sheet
scrollbar使用到下面两张背景图,放到工程目录下的images文件夹里: 具体的style sheet代码,这里面的CSS代码还可以写得更优雅一些,反正是起作用了,没太大兴趣再去继续弄 /* 垂直滚动条*/QScrollBar:vertical { background: url(images/scrollbar-vertical-bg.png)转载 2012-11-14 10:04:32 · 779 阅读 · 0 评论 -
VS+QT没有PRO文件的有关问题
VS+QT没有PRO文件的问题今天需要用到xml,#include 提示无法打开遂百度,说需要在pro文件里面+xml,但是vs+QT是没有pro文件的,无意中找到了解决办法或者出现ps:建立工程之初是可以选择需要所需库的转载 2012-11-14 11:12:42 · 4978 阅读 · 0 评论 -
Qt:SQLite 3入门教程
软件属于公共财(public domain),SQLite可说是某种「美德软件」(virtueware),作者本人放弃着作权,而给使用SQLite的人以下的「祝福」(blessing):May you do good and not evil. 愿你行善莫行恶 May you find forgiveness for yourself and forgive others. 愿你原转载 2012-11-14 15:27:09 · 455 阅读 · 0 评论 -
Qt: 在Qt中计算文本的宽度与高度
在写一些需要精确布局或者排版的软件时候,我们需要知道文本的宽度和高度,保证我们在适当的坐标中使用drawText。例如,我在做一个简单的扫雷软件时,希望把每个格子附近的雷数给显示在小格子里,如下图所示,就需要这样的功能。不同的字体,字宽字高都是不一样的。所以计算文本宽度的是一个和字体相关的一个类QFontMetrics。QPainter p(this);QFontMetrics f转载 2012-11-14 15:30:19 · 892 阅读 · 0 评论 -
Qt: 取得网卡的MAC地址, IP等信息
#include#include int main(int argc,char *argv[]) { QList list = QNetworkInterface::allInterfaces(); foreach(QNetworkInterface i, list) { qDebug() }}转载 2012-11-14 15:33:06 · 778 阅读 · 0 评论 -
如何实现在一个列表中点击右键
问题:如何实现在一个列表中点击右键,如果在Item上面,则有“修改”选项,在其余空白处,则只有“添加”,"删除"选项。实现右键菜单, 从QListWidget中派生出ListWidget,重写void QWidget::contextMenuEvent ( QContextMenuEvent * event ) [virtual protected]当鼠标在ListWidget转载 2012-11-14 15:16:39 · 383 阅读 · 0 评论 -
绘制坐标图型
=====================================Widget.h=====================================#ifndef WIDGET_H#define WIDGET_H#include namespace Ui { class Widget;}class Widget :p转载 2012-11-14 15:21:45 · 752 阅读 · 0 评论 -
Qt:QGraphicsEffect介绍
QGraphicsEffect也是Qt-4.6引入的一个新功能。它让给图形元素QGraphicsItem增加更佳视觉效果的编程变得非常简单。先来看几张效果图。上图中最上面的那个图片是没有使用QGraphicsEffect处理的原图,下面的四个图片分别代表了模糊,变色,透明和阴影效果。对应使用了QGraphicsEffect转载 2012-11-14 15:25:30 · 2389 阅读 · 0 评论 -
Qt: 创建List, 添加删除Item
#ifndef LISTWINDOW_H_#define LISTWINDOW_H_#include QDialog>class QPushButton;class QListWidget;class QWidget;class ListWindow : public QDialog { Q_OBJECTpublic: ListWindo转载 2012-11-15 13:14:28 · 2390 阅读 · 0 评论 -
各种数据类型的相互转换
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);转载 2012-11-14 14:04:15 · 487 阅读 · 0 评论 -
Qt右键菜单
QWidget及其子类都可有右键菜单,因为QWidget有以下两个与右键菜单有关的函数:Qt::ContextMenuPolicy contextMenuPolicy () constvoid setContextMenuPolicy ( Qt::ContextMenuPolicy policy )Qt::ContextMenuPolicy枚举类型包括:Qt::DefaultConte转载 2012-11-14 15:18:06 · 533 阅读 · 0 评论 -
Qt: Qt多线程设计
转自: http://hi.baidu.com/qinpanke/blog/item/a2912c2f209fc6594fc22696.htmlQT通过三种形式提供了对线程的支持。它们分别是,一、平台无关的线程类,二、线程安全的事件投递,三、跨线程的信号-槽连接。这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势。多线程编程也是一个有用的模式,它用于解决执行较长时间的操作而转载 2012-11-14 15:38:34 · 618 阅读 · 0 评论