![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
qt/qtopia
文章平均质量分 81
xiaoyangger
喜欢看武侠,文学小说。
展开
-
fedora14下安装QT4
1、首先,我们必须确保gcc安装好了,其次应用程序安装了windows x server软件包,也就是x11窗口吧,最好有桌面环境2、前提工作到位后,我们就开始下载软件包来安装了,我下载的是qt-x11-opensource-src-4.4.3.tar.bz23、把软件包放在/usr/local/myfile目录下,解压,tar jxvf qt-x11-opensource-src-4.原创 2013-01-28 16:55:23 · 3151 阅读 · 0 评论 -
转载Qt的重要知识3
<br />4.1 The Central Widget<br /> QMainWindow的中央区域可以被任何类型的widget占据。<br /><br />4.2 Subclassing QTableWidget<br /> QTableWidget会自动创建QTableWidgetItem来存储用户的输入。<br /> QTableWidgetItem类并不是widget,而是一个纯粹的data class。<br /> QTabeW转载 2010-05-31 21:20:00 · 1335 阅读 · 0 评论 -
转载Qt的重要知识4
Qt提供的容器类的最大优点在于平台无关性和隐式共享特性11.1 Sequentail ContainersQVector array-like data structure(在尾部插入数据时效率很高,而在中间和头部插入数据时开销很大)。 QVector提供了[]运算符 QVector可以用 QVector中的基本类型及指针被初始化为0。QLinkedList QLinkedList不提供[]运算符,所以必须通过迭代器来对其进行遍历。QList转载 2010-05-31 21:17:00 · 2081 阅读 · 0 评论 -
转载Qt的重要知识2
<br />3.1 Subclassing QMainWindow<br /> 应用程序的主窗口是通过创建QMainWindow的派生类来完成的。QMainWindow和QDialog一样,都是派生自QWidget。<br /> closeEvent()是由QWidget提供的一个虚函数,在用户关闭窗口时会被自动调用。<br /> setCentralWidget()将某个Widget设置为主窗口的central widget, 而central widget意味转载 2010-05-31 21:15:00 · 885 阅读 · 0 评论 -
转载Qt的重要知识
<br />Qt中的每个类,都有一个对应的同名头文件,其中包含其类定义。例如要使用QApplication类,则需要在程序中添加" #include < QApplication> " <br /> QApplication类用于管理应用程序范围内的资源。其构造函数需要main函数的argc和argv作为参数。<br /> <br /> widget被创建时都是不可见的(always created hidden)。widget中可容纳其它widget。<br />转载 2010-05-31 21:13:00 · 1616 阅读 · 0 评论 -
QT中如何使控件随窗口改变大小?
如果要改变窗体的大小,它内部的控件一般不随它的变化而变化,内部部件怎么随窗体的大小而改变自身的大小呢?这里我们一般可以对窗口整体进行布局,我们要用到Layout布局部件。 Layout是一种各种UI都很长用的布局手段,Qt的就很不错,比如说GridLayout,你可以把整个窗体布局一个GridLayout,然后再往GridLayout里面放控件或者其他布局,这种布局的手段可以随窗体变化而改变布局内的控件的大小,而相对的位置不变。使用布局时,在复杂的情况下,需要结合很多的手段才可以达到理想的效果原创 2010-05-31 20:54:00 · 18920 阅读 · 3 评论 -
Qt下的模态和非模态对话框
Qt下的模态和非模态对话框<br /> 之前写过一篇日志qt下的动态对话框,后来在逛论坛的时候发现了这关于QT的模态和非模态对话框更好的内容,故转载过来了。<br /> 模态对话框(Modal Dialog)与非模态对话框(Modeless Dialog)的概念不是Qt所独有的,在各种不同的平台下都存在。又有叫法是称为模式对话框,无模式对话框等。 所谓模态对话框就是在其没有被关闭之前,用户不能与同一个应用程序的其他窗口进行交互,直到该对话框关闭。对于非模态对话框,当被打开时,用户既可选择和该对话框进行交转载 2010-05-31 20:32:00 · 1079 阅读 · 0 评论 -
QT下的几种透明效果
1.窗口整体透明,但是窗体上的控件不透明。 通过设置窗体的背景色来实现,将背景色设置为全透。QPalette pal = palette(); <br />pal.setColor(QPalette::Background, QColor(0x00,0xff,0x00,0x00)); <br />setPalette(pal); 试验效果: 窗体标题栏不透明; 窗体客户区上的控件不透明,QLabel控件只是字显示,控件背景色透明; 窗体客户区完全透明。 另外从网上看到的方法:set转载 2010-05-31 20:30:00 · 771 阅读 · 0 评论 -
读取中文文件内容的测试
<br />有3种因素<br />1、文件的编码格式(是utf8格式和非utf8格式)<br />2、程序里面转换得到内容的方式(QString::fromLocal8Bit 和 codec->toUnicode)<br />注明一下 这里 QTextCodec* pcodec = QTextCodec::codecForLocale();<br />3、不同的字体,假设知道有种字体可以正确显示中文这里举例是Sans Serif字体和 不设置字体<br />因为我最先考虑的不是字体 所以顺序如下<br />转载 2010-05-31 21:37:00 · 696 阅读 · 0 评论 -
转载Qt的重要知识5
<br />18.1 Creaing Threads<br /> Qt中提供多线程的机制很简单:创建QThread的派生类,并重新实现其保护成员函数run()。<br /> <br /> QThread::run(),被调用来开始线程的执行,在run()结束时线程终止。<br /> <br /> QThread::terminate(),用来终止线程的执行,非阻塞操作,并不保证线程的立即终止;可以在调用QThread::terminate()之转载 2010-05-31 21:21:00 · 1577 阅读 · 2 评论 -
提示信息显示
<br />下面这些东西有些杂,显示提示信息的作用,有些试验过,有些没有。东西有些零散,希望有些能够被大家利用。<br /> <br />1.、按钮上只有图片,没有写到文字,所以我想在鼠标移动到按钮时,能弹出一个标签上面写到一些提示信息,如鼠标移运到保存按钮是会在旁边显示“保存”两个字。<br />解决办法:<br />用setTooLTip("保存")<br /> <br />2、可以通过背景图片来实现,但是要隐藏按钮的边界,通过setStyle()方法。<br /> <br />3、如果获取按钮时需要显原创 2010-07-23 21:52:00 · 1366 阅读 · 0 评论 -
linux下QT的串口通讯小实例
代码如下//ui_mainwindow.h#ifndef UI_MAINWINDOW_H#define UI_MAINWINDOW_H#include #include #include #include #include #include #include #include #include #include #include #include QT_BEGIN_NAMESPACEclass Ui_MainWindow{p原创 2010-07-23 21:35:00 · 9240 阅读 · 3 评论 -
QT中的SOCKET的通信
Widget00604275Widget2020251原创 2010-07-23 20:35:00 · 13494 阅读 · 6 评论 -
常见的几个Qt编程问题的处理
<br />1、如果在窗体关闭前自行判断是否可关闭<br />答:重新实现这个窗体的closeEvent()函数,加入判断操作<br />Quote:<br />void MainWindow::closeEvent(QCloseEvent *event)<br />{<br /> if (maybeSave())<br /> {<br /> writeSettings();<br /> event->accept();<br />转载 2010-05-31 21:25:00 · 1279 阅读 · 0 评论 -
qt可停靠控件和工具栏(Dock Widgets and Toolbars)
<br /> 可停靠控件能够停靠在QMainWindow中或者作为一个独立窗口浮动。QMainWindow提供了四个可停靠控件的地方:上方,下方,左方,右方。Microsoft Visual Stadio程序和Qt Linguist程序使用大量的可停靠窗口实现更为复杂的用户界面。在Qt中,可停靠窗口是QDockWidget的一个实例。<br /> 每一个可停靠控件都有一个标题条。用户可以拖动标题栏把窗口从一个可停靠区域移动到另一个可停靠区域。拖动标题栏把窗口移动到不能停靠的区域,窗口就浮转载 2010-05-31 21:32:00 · 1747 阅读 · 0 评论 -
Qt Creator使用体会与小技巧
<br />Qt Creator是Qt官方的IDE,这个IDE为Qt编程人员提供了一个完整的开发环境。当然了,这个IDE是用Qt写的,也是免费的。这个IDE真正的编译部分使用了MinGW gcc compiler。也就是说,这个IDE主要的作用是协助开发人员编写代码,并以更加友好的图形界面方式(而不是命令行)使用MinGW。下面我以MS Visual Studio作为参照,讲一些在Windows平台上Qt Creator的使用体会与小技巧。<br />1. 工程文件与项目组织结构<br />转载 2010-05-31 21:34:00 · 862 阅读 · 0 评论 -
QT中QWidget、QDialog及QMainWindow的区别
这3个基类从名字上看分别是 "微件"、"对话框"、"主窗口,QWidget类是所有用户界面对象的基类,QMainWindow和QDialog都是QWidget的子类。窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。 QM原创 2013-02-28 10:53:51 · 1786 阅读 · 0 评论 -
QT中的信号与槽的概念体制 .
信号与槽作为 QT 的核心机制在 QT编程 中有着广泛的应用,本文介绍了信号与槽的一些基本概念、元对象工具以及在实际使用过程中应注意的一些问题。 QT 是一个跨平台的 C++ GUI 应用构架,它提供了丰富的窗口部件集,具有面向对象、易于扩展、真正的组件 编程 等特点,更为引人注目的是目前 Linux 上最为流行的 KDE 桌面环境就是建立在 QT 库的基础之上。 QT 支持下列平台: MS/转载 2013-02-27 11:23:19 · 1238 阅读 · 0 评论 -
基于S3C6410的QT4交叉编译环境搭建
Qt-extended-4.4.3移植环境:VMware+Fedora14嵌入式平台:S3C6410交叉编译工具链:arm-linux-gcc 4.5.1源码包:arm-qt-extended-4.4.3-20101105.tgz tslib-1.4.tar.gz一、 搭建TI的编译环境主要是arm-linux-gcc和gcc的安装二、交叉编译安装 ts原创 2013-01-28 19:38:17 · 2346 阅读 · 1 评论 -
Qt学习(如何交叉编译一个Qt程序使其能在板子上运行) .
如何交叉编译一个Qt程序使其能在板子上运行 首先安装交叉编译器arm-linux-gcc3.4.6,先将其压缩包放到一个目录下,然后对其进行解压,举了解压命令为:tar xjvf arm-linux-gcc-3.4.6-glibc-2.3.6.tar.bz2 -C /usr/local/(注意:C 后面有个空格,并且 C 是大写的,它是英文单词“Change”的第一个字母,在此是改变转载 2013-01-25 10:22:59 · 3022 阅读 · 0 评论 -
windows下给Qt配置环境变量
在Qt中编译程序完成后,想到文件夹里运行一下生成的exe文件。 这时“BANG”,系统报错:“没有找到mingwm10.dll,因此这个程序未能启动。重新安装应用程序可能会修复此问题。”或“没有找到QtCored4.dll,因此这个程序未能启动。重新安装应用程序可能会修复此问题。” 那么就是因为还没有给系统配置Qt的环境变量。 到“我的电脑->属性->高级->环境变量->系统变量”中编辑Path,补上Qt的bin路径“;X:/Qt/2010.02.1/bin;X:/Qt/2010.02.1/qt/bin;X原创 2010-06-09 18:15:00 · 9868 阅读 · 2 评论 -
Qt Phonon1
<br />无论从功能还是大小来讲,Amarok都是一款优秀的KDE音乐播放器。但它很难称作是一款快速点选式的音乐播放器,因为它要通过好几次点击和一些仔细的GUI导航才能听到音乐收藏中的音乐,这将给我们的CPU和大脑带来一定负担。这里我们将会构建所能想到的最简单和最直观的音乐播放器,给用户提供另一个选择。<br />从苹果的新款iPod Shuffle吸取一些灵感,只提供最基本的控制功能。一个按钮用于选择音乐,另一个按钮用于播放和暂停,还有一个按钮用于跳到下一段音乐。对于大多数用户而言,这些控制功能已经足够转载 2010-06-02 17:44:00 · 2786 阅读 · 0 评论 -
Qt Phonon2
<br />Phonon严格来说其实非为Qt的library,Phonon原本就是KDE 4的开放原始码多媒体API,後来与Qt合并与开发,所以简单来说就是Qt使用Phonon这个多媒体框架来提供一般影音多媒体档案的播放,而这些影音多媒体来源可以是档案、网路串流或是指到一个档案的QUrl。<br />Phonon是一个跨平台多媒体框架,能够在Qt应用程式中使用与播放影音多媒体内容。<br /> [编辑]Phonon的架构 <br />整体来说,Phonon的架构只需要记住以下的三东西:media objec转载 2010-06-02 17:49:00 · 915 阅读 · 0 评论 -
QT中实现上下文菜单
<br />在许多的应用程序中,当我们右击时会弹出一个菜单,这个菜单就叫做“上下文菜单”,英文名称为“Context Menu”.在QT中有两种方式可以实现这种上下文菜单,一一列举如下:<br /> 一.重载contextMenuEvent()函数,一个简单的示例如下:<br />void MainWindow::contextMenuEvent(QContextMenuEvent *event)<br />{<br /> filemenu->addAction(newAction);<br />转载 2010-05-31 21:51:00 · 1698 阅读 · 0 评论 -
example of QGridLayout ,有时间实践一下
<br />#include "find.h" <br />#include<QtGui> <br />//find.cpp <br />//example of QGridLayout <br />class QLabel; <br />class QPushButton; <br />class QCheckBox; <br />class QTableWidget; <br /> <br />findDialog::f原创 2010-05-31 21:50:00 · 1106 阅读 · 0 评论 -
Qt中解决中文乱码的方法----编码
<br />如只是提供给本地用户使用,无需国际化<br />先调用下面两个函数之一<br />QTextCodec *textc=QTextCodec::codecForName(”gbk”);<br />QTextCodec *textc=QTextCodec::codecForName(”utf8″);<br />然后调用下面3个函数之一<br />QTextCodec::setCodecForCStrings(textc);<br />QTextCodec::setCodecForTr(textc);转载 2010-05-31 21:48:00 · 1236 阅读 · 0 评论 -
Qt的中文编码
<br />我的中文为什么没法显示?在Qt使用中经常有朋友会碰到这样的问题。<br />通过google搜索,会发现已经有人解决过了,无非就是重新设置一下默认的编码器<br />先调用下面两个函数之一<br />QTextCodec *textc=QTextCodec::codecForName(“gbk”);<br />QTextCodec *textc=QTextCodec::codecForName(“utf8″);<br />然后调用下面3个函数之一<br />QTextCodec::setCode原创 2010-05-31 21:39:00 · 593 阅读 · 0 评论 -
关于QT中显示中文的一些研究
<br />作为非英语国家人员开发的类库,QT有充分的理由优先考虑支持Unicode和各国自定义字库编码。大家也知道了QT对软件Internationalization有一套完整的开发模型,包括专门为此写的linguist程序。但是如果我们的软件只运行在中文系统下,最简单的方法是什么呢?最简单的方法,就是在main函数中调用QTextCodec::setCodecForTr( QTextCodec::codecForName("GBK") );就可以了。记得这句要在所有使用tr的语句前调用。以后在需要使用中转载 2010-05-31 21:36:00 · 653 阅读 · 1 评论 -
error: collect2: ld returned 1 exit status
<br />利用Qt Creator 1.2.1( Built on Sep 30 2009 at 05:21:42)编译程序经常会出现error: collect2: ld returned 1 exit status的错误,但是自己的程序没有一点问题,怎么回事呢?<br /> <br /> 如果这时退出软件,再重新进入,打开刚才的工程,重新编译,就不会出现刚才的错误了。这应该是Qt Creator软件的问题吧!<br /> <br /> 后来发现是因为上次执行的程序还在运行,你打转载 2010-07-23 18:15:00 · 1429 阅读 · 0 评论 -
error: collect2: ld returned 1 exit status
<br />利用Qt Creator 1.2.1( Built on Sep 30 2009 at 05:21:42)编译程序经常会出现error: collect2: ld returned 1 exit status的错误,但是自己的程序没有一点问题,怎么回事呢?<br /> <br /> 如果这时退出软件,再重新进入,打开刚才的工程,重新编译,就不会出现刚才的错误了。这应该是Qt Creator软件的问题吧!<br /> <br /> 后来发现是因为上次执行的程序还在运行,你打转载 2010-07-23 18:15:00 · 1700 阅读 · 0 评论 -
QT中调用外部程序的方法 QProcess类
QT4对于界面编程无疑是一个很方便的工具。但是由于它界面开发专项特性,可能导致了某些方面的不足(到目前为止暂时没有使用到这类复杂功能,所以只能是推测)。这样当整个程序需要某些功能时,就需要外部模块的支持。为了能够与外部程序相互联系,Qt4提供了强大的外部程序调用类。先说说QProcess类,目前主要用到程序调用函数。#include int QProcess::execute (转载 2010-03-21 16:19:00 · 1826 阅读 · 0 评论 -
QT中实现上下文菜单
在许多的应用程序中,当我们右击时会弹出一个菜单,这个菜单就叫做“上下文菜单”,英文名称为“Context Menu”.在QT中有两种方式可以实现这种上下文菜单,一一列举如下: 一.重载contextMenuEvent()函数,一个简单的示例如下:void MainWindow::contextMenuEvent(QContextMenuEvent *event){原创 2010-03-21 16:15:00 · 595 阅读 · 0 评论 -
Qt中解决中文乱码的方法----编码
如只是提供给本地用户使用,无需国际化先调用下面两个函数之一QTextCodec *textc=QTextCodec::codecForName(”gbk”);QTextCodec *textc=QTextCodec::codecForName(”utf8″);然后调用下面3个函数之一QTextCodec::setCodecForCStrings(textc)转载 2010-03-21 16:13:00 · 496 阅读 · 0 评论 -
一个QThread例子
//threadTest.h #ifndef THREADTEST_H #define THREADTEST_H #include #include "test.h"class MyThread : public QThread { protected : virtual void run(); }; MyThread myThrea转载 2010-01-30 14:33:00 · 2230 阅读 · 0 评论 -
qt对所有文字形式的文本使用tr()
qt对所有文字形式的文本使用tr()无论你的程序在哪里对将会呈现给用户的文本使用了"quoted text",要确保它被QApplication::translate()函数处理过。其实做到这一点只需要使用QObject::tr()。例如,假设LoginWidget是QWidget的一个子类: LoginWidget:: LoginWidget() {转载 2010-01-29 09:58:00 · 10276 阅读 · 2 评论 -
qt做启动界面
如何用qt做启动界面,说起来也很简单。其实只需要创建一个元件dialog,然后插入一张图片背景,用一个定时器,使其在主窗口显式之前显示规定的一段时间。 下面这里有一段代码: int main(int argc, char *argv[]) { QTextCodec::setCodecForTr(QTex原创 2010-01-26 10:41:00 · 2726 阅读 · 1 评论 -
qt中如何去掉主窗口标题栏
做qt界面的时候这个问题想了一段时间,不过想象也简单,问了别人才知道是那么简单。 有这样一个程序:#include #include #include #include #include "widget.h"int main(int argc, char *argv[]){ QTextCodec::setCodecForTr(Q原创 2010-01-28 22:49:00 · 21119 阅读 · 8 评论 -
qt中关于文件的操作
基本用法QFile类是一个操作文件的输入/输出设备。QFile是用来读写二进制文件和文本文件的输入/输出设备。QFile可以自己单独被使用,但是如果和QDataStream或QTextStream一起使用将更加方便。文件名通常可以通过构造函数来传递,但也可以使用setName()来设置。你可以通过exists() 来检查一个文件是否存在并且可以通过remov原创 2010-01-28 22:12:00 · 12400 阅读 · 1 评论 -
转载Qt多线程的理解
POINT 1:QThread类的实例与普通类的实例没什么不同,只是运行着的run()函数会不同 例1:class MThread :public QThread { public: MThread(); ~MThread(); void run();转载 2010-01-28 21:55:00 · 1176 阅读 · 0 评论 -
QTimer,QTime的一点应用
<!-- document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() {转载 2010-01-28 21:19:00 · 3605 阅读 · 0 评论