QT常用控件编程.docx_第1页
QT常用控件编程.docx_第2页
QT常用控件编程.docx_第3页
QT常用控件编程.docx_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

QT常用控件编程结合ctrldemo程序看以下内容一、常用控件介绍n QString 和 char * 之间的互相转换n Check Boxn Radio Buttonn QComboBox n lineEditn QSpin Box1、QString 和 char * 之间的互相转换char *chUser= rootchar *chp;(1) / char * 转换成 QStringQString qUser = QString(QLatin1String(chUser) ;(2) / QString 转换成 char *chp = QString. toLatin1().data();(3) int 和 QString 之间的转换int a=10;QString b;b=QString:number(a)(4)QString 转intQString a=120int b;b=a.toInt();(5) 用qDebug 进行调试,include void qDebug ( const char *msg, . )2、CheckBox 控件(1)bool isChecked() 返回值为true ,表示选中返回值为false,表示未选中(2)setChecked(bool b)Ifbis true the checkbox is checked; ifbis false the checkbox is unchecked.3、标签标签主要掌握一个方法即SetText()voidsetText( const QString & )注意setText参数是QString类型的,char *类型的字符串需要明确编码,调用QString的方法进行转换:QStringfromAscii( const char *str, intsize= -1 )QStringfromLatin1( const char *str, intsize= -1 )QStringfromLocal8Bit( const char *str, intsize= -1 )比如: ui-label_4-setText(QString:fromLocal8Bit(登录中。);就可以正确显示中文了,fromLocal8Bit 会根据当前中文编码进行转换,不论是UTF-8还是GBK编码都可以正确转换。4、Radio Button(1) 需要先放一个GroupBox,(2)然后把Radio Button 拖到GroupBox中,形成一组,这样就构成了单选按钮,每次只能选中一个。(3)可以在某一个按钮上设置缺省选中的状态。属性checked 打钩。(4)常用的方法1)boolisChecked() const / 返回值true,选中,false未选中2)voidsetChecked( bool ) / 参数true设置选中转台,false取消选中状态5、QComboBox 组合下来框(1)设置组合下拉框的选项有两种方法,一种是用手工添加的方式,双击组合框,点击+号,添加选项。一种是用程序添加的方法:AddItem (constQString&text)比如:ui-cbPort-addItem(QString:fromLocal8Bit(串口一); ui-cbPort-addItem(QString:fromLocal8Bit(串口二); ui-cbPort-addItem(QString:fromLocal8Bit(串口三); ui-cbPort-addItem(QString:fromLocal8Bit(串口四);(2) 设置获取当前条目索引(1)intcurrentIndex() const / 获取当前选中的条目索引(2)voidsetCurrentIndex( intindex) / 设置当前选中的条目,从0算起ui-cbPort-setCurrentIndex(2);i=ui-cbPort-currentIndex(); 6 lineEdit 单行文本框QStringtext() constvoidsetText( const QString & )注意,text的返回值和setText的参数都是QString格式,转换成char *格式的,参考上述第一节内容7 QSpin Box(1)属性:步长增大或减小按钮,注意最大值最小值和步长属性minimummaximumsinglestep(2)以下两个方法,分别获取当前spinbox的值和设置当前spinbox的值。intvalue() constvoidsetValue( intval)(3)信号voidvalueChanged( inti)voidvalueChanged( const QString &text)当spinbox的值变化时,会发出以上两个信号,可定义相应的槽函数处理这个信号。二、任务1.利用spinbox 、combox、Label、设计一个简单的计算器当操作数1 或者 操作数2的值发生改变的时候,根据操作符号(+-*/) 将两个数的计算结果显示在等号后面2.利用Label lineEdit、checkBox,pusbButton设计登录画面,界面要求如下:点击登录后,假设用户名:root,口令: 123456为合法口令,用exit(0) 返回,否则用exit(-1)返回。3. 下次课任务3.1 ini 文件格式:#login username = rootpassword = 123456login = 11)每行的格式 key = value ,以等号分割,key 和value字符串中间不允许有空格,key两头,=号两头,value两头允许有空格和tab键,每一行以回车换行(windows下,linux下以换行)结尾。2)每行开始第一个字符如果是#号,表示注释行。3)要求可以修改原有的键的值,或追加新的键值对。3.2 编程实现1)约定:全采用标准C函数fread 、fgets、fwrite、fprintf编程,QT下的编程QFILE类形式的,课外自己摸索2) 增加config类,定义config类config.h ,类的实现config.cpp#ifndef CONFIG_H#define CONFIG_H#includeclass Configpublic: Config(); Config(); int LoadConfig(); int SaveConfig(); int _read_ini(char *filename,char *key,char *value,int *keypos,int *keylen); int read_ini(char *filename,char *key,char *value); int write_ini(char *filename,char *key,char *value);public: int iHanAdjust; int iScreenSaver; int iKeySend; int iHanCode; / Auto Login information char user32; char pass32; int iLogin;#endif

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论