1,进程条--向用户显示程序的当前状态,向用户提示该任务需要多长时间才能够完成.

Qt-ProgressBar创建进程条,QProgressBar,为了使进程条担当起进程指示功能,需要执行定义进程条的刷新时间

paint->drawText(20,20-左上角相对于父部件的位置,260,60--字体图形的长度及宽度,AlignCenter--对齐方式,"Font:Arial,Size:16,Style:Bold")

QPainter绘图函数,paintEvent()函数begine()

end();

ellipse(),circle,drawEllipse()函数,paint->setPen(blue,4,QPen::SolidLine);

paint->drawEllipse(20,20,210,160);园,椭圆 距离窗口左上角像素数,宽度-高度

QPainter绘图函数---圆角矩形QPainter::drawRoundRect()

paint->setPen(Qpen(red,4,Qpen::SolidLine));

paint->drawRoundRect(20,20,210,160,50,50);最后两个参数决定角的圆度,0-99,99之最园.

2,pie饼图扇形QPainter::drawPie()

paint->setPen(QPPen(green,4,QPen::SolidLine));

paint->drawPie(20,20,210,160,0,500);后两个参数定义园的样式,0起始角度,500扇形弧线长度,最后两个参数不表示度,而是表示1度的16份之一,一个园就表示5760(16 * 360)

3,绘制,

paint->setPen(QPen(green,4,QPen::SolidLine));

paint->drawChord(20,20,210,160,500,10000);

paint->setPen(QPen(green,4,QPen::SolidLine));

paint->drawArc(20,20,210,160,500,10000);

paint->setPen(QPen(green,4,QPen::SolidLine));

paint->drawQuadBezier(QPointArray(QRect(20,20,210,160)));

drakYellow,drakMagenta,drakCyan,drakBlue,gray,magentablack  drak,dark;

管理颜色,指定颜色

Qt指定颜色,RGB(red,green,blue),HSV(色度/饱和度、纯度)

QPrinter::getPrinter();

QPrinter print;

int proceed = print_setup();

if (proceed == true)

{

//start printing

//(start drawing to the QPrinter object)

}

else

{

//Abort

}

理解Qt对话框

QColorDialog类唯一的一个函数QColorDialog::getColot()显示颜色选择对话框,该函数返回所选中的桉树

2,文本对话框

用于选则文件的对话框

ile.cpp: In constructor ‘MyMainWindow::MyMainWindow()’:
file.cpp:19:44: error: no matching function for call to ‘QFileDialog::getOpenFileName(const char [5], const char [2])’
  file = fdialog->getOpenFileName("/opt","*");
                                            ^
file.cpp:19:44: note: candidate is:
In file included from /opt/Qt5.4.1/5.4/gcc_64/include/QtWidgets/QFileDialog:1:0,
                 from file.cpp:3:
/opt/Qt5.4.1/5.4/gcc_64/include/QtWidgets/qfiledialog.h:200:20: note: static QString QFileDialog::getOpenFileName(QWidget*, const QString&, const QString&, const QString&, QString*, QFileDialog::Options)
     static QString getOpenFileName(QWidget *parent = 0,
                    ^
/opt/Qt5.4.1/5.4/gcc_64/include/QtWidgets/qfiledialog.h:200:20: note:   no known conversion for argument 1 from ‘const char [5]’ to ‘QWidget*

Qt 打开文件的默认路径 QFileDialog::getOpenFileName()

为了说明QFileDialog::getOpenFileName()函数的用法,还是先把函数签名放在这里:
 
QString QFileDialog::getOpenFileName (
          QWidget * parent = 0,
          const QString & caption = QString(),
          const QString & dir = QString(),
          const QString & filter = QString(),
          QString * selectedFilter = 0,
          Options options = 0 )
 
第一个参数parent,用于指定父组件。注意,很多Qt组件的构造函数都会有这么一个parent参数,并提供一个默认值0;
 
第二个参数caption,是对话框的标题;
 
第 三个参数dir,是对话框显示时默认打开的目录,"." 代表程序运行目录,"/" 代表当前盘符的根目录(Windows,Linux下/就是根目录了),也可以是平台相关的,比如"C:\\"等;例如我想打开程序运行目录下的Data 文件夹作为默认打开路径,这里应该写成"./Data/",若想有一个默认选中的文件,则在目录后添加文件名即可:"./Data /teaser.graph"
 

四个参数filter,是对话框的后缀名过滤器,比如我们使用"Image Files(*.jpg
*.png)"就让它只能显示后缀名是jpg或者png的文件。如果需要使用多个过滤器,使用";;"分割,比如"JPEG
Files(*.jpg);;PNG Files(*.png)";
 
第五个参数selectedFilter,是默认选择的过滤器;
 
第六个参数options,是对话框的一些参数设定,比如只显示文件夹等等,它的取值是enum QFileDialog::Option,每个选项可以使用 | 运算组合起来。
 
如果我要想选择多个文件怎么办呢?Qt提供了getOpenFileNames()函数,其返回值是一个QStringList。你可以把它理解成一个只能存放QString的List,也就是STL中的list<string>。
3,字体选则对话框
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -I. -I/opt/Qt5.4.1/5.4/gcc_64/include -I/opt/Qt5.4.1/5.4/gcc_64/include/QtWidgets -I/opt/Qt5.4.1/5.4/gcc_64/include/QtGui -I/opt/Qt5.4.1/5.4/gcc_64/include/QtCore -I. -I/opt/Qt5.4.1/5.4/gcc_64/mkspecs/linux-g++ -o front.o front.cpp
g++ -Wl,-O1 -Wl,-rpath,/opt/Qt5.4.1/5.4/gcc_64 -Wl,-rpath,/opt/Qt5.4.1/5.4/gcc_64/lib -o font front.o   -L/opt/Qt5.4.1/5.4/gcc_64/lib -lQt5Widgets -lQt5Gui -lQt5Core -lGL -lpthread
4,message对话框
消息框上边显示的文本字符串--窗口标题,消息框内显示的文本字符串--实际消息
mbox = new QMessageBox("Proceed?","Do you want to proceed?",QMessageBox::Cirtical--图标,)
QMessageBox::NoIcon不显示任何图标,QMessageBox::Information,Waning,Cirtical
QMessageBox::Ok | QMessageBox::Default,QMessageBox::Cancel | QMessage::Escape 两个按钮,一个是默认的enter 和Escape空格按钮,最后一个参数是第三个按钮; QMessageBox::yes,abort retry ignore
5,进度对话框
进度对话框用于将程序的当前状态--与进度条一样通知用户,进度条对话框与进度条间区别 能否与用户间进行交互
constructor
6,创建用户对话框 QDialog(所有对话框基类),QTabDialog(选项卡对话框)
对话框类型---模式对话框(启动自己的事件循环,对话框关闭之前会阻塞程序的其余事件)--非模式对话框
QDialog::setCaption()函数用于设置对话框窗口标题
QDialog::accept(),QDialog::reject(),QDialog::done()QDialog自动调整窗口大小适应子部件
 

Qt学习--部件深入--烤猪蹄的更多相关文章

  1. PyQt(Python+Qt)学习随笔:利用QWidget部件的palette以及ColorGroup、colorRole局部调整部件的特定范围颜色

    专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 在<PyQt(Python+Qt)学习随笔:QWidget部件的 ...

  2. PyQt(Python+Qt)学习随笔:Qt Designer中部件的autoFillBackground属性

    autoFillBackground属性可以确认部件背景是否自动填充,如果自动填充,Qt会在调用Paint事件之前填充部件的背景.使用的颜色由部件调色板中的QPalette.window 角色定义(关 ...

  3. PyQt(Python+Qt)学习随笔:Qt Designer中部件的accessibleDescription和accessibleName辅助阅读属性

    accessibleDescription和accessibleName属性都是用于残疾人辅助阅读的,这两个属性都有国际化属性(关于国际化请参考<PyQt(Python+Qt)学习随笔:Qt D ...

  4. PyQt(Python+Qt)学习随笔:Qt Designer中部件的toolTip、toolTipDuration、statusTip、whatsThis属性

    toolTip属性 toolTip属性设置部件的toolTip提示信息,toolTip提示信息在鼠标放到控件上会浮动出一个小框显示提示信息.默认情况下,仅显示活动窗口子部件的toolTip,可以通过在 ...

  5. PyQt(Python+Qt)学习随笔:部件的大小策略sizePolicy的含义

    在Qt Designer中的每个部件,除了设置部件的位置(geometry)之外,还可以指定部件的大小策略sizePolicy.部件的sizePolicy用于说明部件在布局管理中的缩放方式,当部件没有 ...

  6. PyQt(Python+Qt)学习随笔:Qt Designer中QAbstractButton派生按钮部件的shortcut 属性

    shortcut 属性保存与按钮关联的快捷键.可以使用shortcut()和setShortcut(QKeySequence)访问和设置该属性. 关于这个属性官网介绍的不多,经老猿实际验证,它与tex ...

  7. PyQt(Python+Qt)学习随笔:Qt Designer中QAbstractButton派生按钮部件的icon属性和iconSize属性

    icon属性 icon属性保存按钮上展示的图标,图标的缺省大小由图形界面的样式决定,但可以通过 iconSize 属性进行调整. 图标的几种子属性状态的含义与QWidget的windowIcon属性相 ...

  8. PyQt(Python+Qt)学习随笔:Qt Designer中spacer部件的sizeHint属性

    在两种Spacer部件中都有sizeHint属性,在<PyQt(Python+Qt)学习随笔:Qt Designer中部件的三个属性sizeHint缺省尺寸.minimumSizeHint建议最 ...

  9. Qt学习之自定义窗口部件

    自定义Qt窗口部件 实现一个十六进制的SpinBox,一般SpinBox只支持十进制整数,但是可以子类化方法实现该功能 需重新实现以下虚函数 virtual QString textFromValue ...

随机推荐

  1. break语句的使用

    先举一个简单点的例子 #include<stdio.h> #include<stdlib.h> int main() { float a,b; char c; printf(& ...

  2. HDU 4121 Xiangqi

    模拟吧,算是... 被这个题wa到哭,真是什么都不想说了...上代码 #include <iostream> #include <cstring> using namespac ...

  3. 解决Java调用Azure SDK证书错误javax.net.ssl.SSLHandshakeException

    Azure作为微软的公有云平台,提供了非常丰富的SDK和API让开发人员可以非常方便的调用的各项服务,目前除了自家的.NET, Java, Python, nodeJS, Ruby,PHP等语言都提供 ...

  4. COB(Chip On Board)的製程簡單介紹

    前面提及 COB 的生產與 IC 的封裝製程幾乎是一致的,除了把 leadframe 改成了 PCB,把封膠由 molding 改成 dispensing,少了 triming & marki ...

  5. (六)boost库之内存管理shared_ptr

    (六)boost库之内存管理shared_ptr 1.shared_ptr的基本用法 boost::shared_ptr<int> sp(new int(10)); //一个指向整数的sh ...

  6. tcpdump 抓包让wireshark来分析

    在linux下面用tcpdump 抓包非常方便, 但是抓的包要提取出来进行分析, 还是得用wireshark来过滤分析比较方便. 下面先介绍一下 TCPDUMP 的使用 例:tcpdump host ...

  7. linux服务器WEB环境一键安装包lanmp教程之五

    在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.增 ...

  8. linux下如何产生core,调试core

    linux下如何产生core,调试core 摘自:http://blog.163.com/redhumor@126/blog/static/19554784201131791239753/ 在程序不寻 ...

  9. POJ 1734 求最小环路径 拓展Floyd

    九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/11888019 题意: n个点 m条无向边 下面m条有权无向边 问图中最小环的路径 ...

  10. 【巧妙】【3-21个人赛】Problem C 01串

    Problem C Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Sub ...