qt中特有的关键字-1---qDebug ---QInputDialog---QFontDialog---QColorDialog---QFileDialog

qDebug用于在控制台输出调试信息,主要有以下几种用法。

1、类似c++的cout函数

QString str="world";

qDebug()<<"hello "<<str<<"!"<<endl;

注:此处endl起到的作用有两个:

a、等同于\n换行

b、刷新缓冲区,将缓冲区数据写入文件或屏幕,因此会影响程序效率。

endl等价于"/n"+flush();

2、构造函数直接引入参数

-字符串拼接

例2.1:QString str="world!";

qDebug("hello "+str);

-类似mfc中CString的format函数

int year=18;

qDebug("今年我%d",year);

注:
%a,%A 读入一个浮点值(仅C99有效)    
%c 读入一个字符    
%d 读入十进制整数    
%i 读入十进制,八进制,十六进制整数    
%o 读入八进制整数    
%x,%X 读入十六进制整数   
%s 读入一个字符串,遇空格、制表符或换行符结束。    
%f,%F,%e,%E,%g,%G 用来输入实数,可以用小数形式或指数形式输入。    
%p 读入一个指针    
%u 读入一个无符号十进制整数   
%n 至此已读入值的等价字符数    
%[] 扫描字符集合    
%% 读%符号

  • QInputDialog--输入对话框

在Qt中,如果想快速生成一个对话框,可以和用户进行简单的交互,而不需要写一个新的类的时候,就要用到QInputDialog类,这个类就是专门用来建立简单对话框的,其主要能建下列几种对话框:

static QString QInputDialog::getText ( QWidget * parent,
                                                      const QString & title,
                                                      const QString & label,
                                                      QLineEdit::EchoMode mode = QLineEdit::Normal,
                                                      const QString & text = QString(),
                                                      bool * ok = 0,
                                                      Qt::WindowFlags flags = 0 )

第一个参数parent,也就是父组件的指针;

第二个参数title就是对话框的标题;

第三个参数label是在输入框上面的提示语句;

第四个参数mode用于指明这个QLineEdit的输入模式,取值范围是QLineEdit::EchoMode,默认是Normal,也就是正常显示,你也可以声明为Password,这样就是密码的输入显示了,具体请查阅API;

第五个参数text是QLineEdit的默认字符串;

第六个参数ok是可选的,如果非NLL,则当用户按下对话框的OK按钮时,这个bool变量会被置为true,可以由这个去判断用户是按下的OK还是Cancel,从而获知这个text是不是有意义;

第七个参数flags用于指定对话框的样式。

函数的返回值是QString,也就是用户在QLineEdit里面输入的内容。至于这个内容有没有意义,那就要看那个ok参数是不是true了。QInputDialog不仅提供了获取字符串的函数,还有getInteger,getDouble,getItem三个类似的函数,大家可以自行查看具体的内容。

  • QFontDialog

QFont QFontDialog::getFont ( bool * ok, const QFont & initial, QWidget * parent = 0, const char * name = 0 ) [static]


执行一个模式字体对话框并且返回一个字体。
如果用户点击OK,被选择的字体将被返回,并且如果点击Cancel,initial字体被返回。

对话框的父对象为parent、名称为name。initial是初始选择的字体。如果ok参数为非零,则如果用户点击OK,*ok被设置为真,并且如果用户点击Cancel,就被设置为假。

这个静态函数没有完整的QFontDialog对象灵活,但是要方便并且容易使用。

  • QColorDialog

QColor QColorDialog::getColor(const QColor & initial = Qt::white, QWidget * parent = 0, const QString & title = QString(), ColorDialogOptions options = 0) [static]

 

  • QFileDialog

getOpenFileName()是QFileDialog类的一个静态函数,返回用户选择的文件名,如果用户选择取消(Cancel),则返回一个空串。函数形式如下:

QString QFileDialog::getOpenFileName( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter = 0, Options options = 0 );

 

 调用getOpenFileName()函数将创建一个模态的文件对话框。dir参数指定了默认的目录,如果dir参数带有文件名,则该文件将是默认的选中文件;filter参数对文件系统进行过滤,只有与过滤器匹配的文件类型才显示,filter可以同时指定多种过滤方式供用户选择,多种过滤器之间用“;;”隔开,用户选择的过滤器通过参数selectedFilter返回。

 

静态函数

说明

备注

getOpenFileName

获取用户选择的文件名

 

getSaveFileName

获取用户保存的文件名

 

getExistingDirectory

获取用户选择的已存在的目录名

 

getOpenFileNames

获得用户选择的文件名列表

QString

getExistingDirectory ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), Options options = ShowDirsOnly )

QString

getOpenFileName ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString *selectedFilter = 0, Options options = 0 )

QStringList

getOpenFileNames ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString *selectedFilter = 0, Options options = 0 )

QString

getSaveFileName ( QWidget * parent = 0, const QString & caption = QString(), const QString & dir = QString(), const QString & filter = QString(), QString * selectedFilter= 0, Options options = 0 )

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值