Qt:16---Dispaly Widgets控件的使用_Dispaly  Widgets

一、Label
  • 概念:可以提供文本或图片、动画显示,没有提供用户交互功能

Qt:16---Dispaly Widgets控件的使用_动态图_02Qt:16---Dispaly Widgets控件的使用_ui界面_03

ui界面下属性:

  • text:默认文本,可以添加转义字符
  • pixmap:添加图片
  • alignment:文本对齐方式
  • frameShape:控件边框等样式

函数:

  • setPixmap(图片变量);  //添加图片
  • setMovie(动态图变量);  //设置动态图
  • resize(宽,高);  //设置大小
  • setScaledContents(true/false);  //是否可以缩放
  • setText(); //这是文本
  • setFixedSize(); //设置固定大小
  • setFixedWidth(); //设置固定宽度
  • setFixedHeight(); //设置固定高度

加载一个图片

//加载图片与动态图事例
QPixmap mImage = QPixmap(":/pic/image/png/poster.png");//加载图片  
ui‐>label_pic‐>setPixmap(mImage);     
ui‐>label_pic‐>resize(320, 240);
    
QMovie *pMove = new QMovie(":/pic/image/gif/girl.gif");//加载动态图
ui‐>label_gif‐>setMovie(pMove);
ui‐>label_gif‐>setFixedSize(510, 215);     
ui‐>label_gif‐>setScaledContents(true); //允许缩放     
pMove‐>start();//动态图需要start才可以播放
二、Text Browser
  • 概念:一个带有超文本导航的富文本浏览器
  • 只可显示内容,不可以更改

Qt:16---Dispaly Widgets控件的使用_Dispaly  Widgets_04Qt:16---Dispaly Widgets控件的使用_Dispaly  Widgets_05

函数:

  • insertPlainText(文本);  //向框内插入数据
三、Progress Bar
  • 进度条

Qt:16---Dispaly Widgets控件的使用_动态图_06Qt:16---Dispaly Widgets控件的使用_进度条_07

ui界面下属性:

  • value:当前值
  • alignment:进度数字对齐方式
  • textVisible:是否显示文字,文字一般是百分比表示的进度
  • orientation:进度条垂直/水平放置
  • minimum:最小值    maximum:最大值
  • format:显示文字的格式,"%p%"显示百分比,"%v"显示当前值,"%m"显示总步数(缺省为"%p%")

函数:

  • setValue(参数);  //设置值(int)
事例:在状态栏(status Bar)显示进度条
构造中:
ui->statusBar->showMessage("文本内容",显示多长时间);//参数2可有无
//statusBar->show();//可直接显示

QProgressBar* pStateProgressBar=new QProgressBar(this);//创建一个进度条,构造参数:父窗口
ui->statuBar->addPermanentWidget(pStateProgressBar);//设置永久进度条
pStateProgressBar->setValue(50);//设置当前进度
pStateProgressBar->setTextVisible(false);//设置进度数字不显示
四、LCD Number
  • 概念:显示液晶字体的数字

Qt:16---Dispaly Widgets控件的使用_动态图_08Qt:16---Dispaly Widgets控件的使用_动态图_09

ui界面下属性:

  • frameShape:边框样式
  • value:返回显示值,浮点数。若设置为显示整数,会自动四舍五入后得到整数(并设为intValue的值)。如果smallDecimalPoint=true,设置value可以显示小数,但是数的位数不能超过digitCount
  • intValue:返回显示的整数值
  • lineWidth:边长    midLineWidth:边长
  • mode:数的显示进制
  • digitCount:显示的数的位数,如果是小数,小数点也算一个位数
  • smallDecimalPoint:是否有小数点,如果有小数,就可以显示小数

Qt:16---Dispaly Widgets控件的使用_Dispaly  Widgets_10

函数:

  • display();  //显示参数给出的文本(string/int/double)
  • setDecMode()、setBinMode()、setOtcMode()、setHexMode()  //设置显示的值为10、2、8、16进制
显示时间事例
QTime time=QTime::currentTime();//读取当前时间
QString text=time.toString("hh:mm::ss:zzz");/格式化当前时间
time->start(1);//时间间隔

演示案例

//dial控件改变
void Dialog::on_dial_valueChanged(int value)
{
    ui->LCDDisplay->display(value);
}

//二进制
void Dialog::on_radioBtnBin_clicked()
{
    ui->LCDDisplay->setDigitCount(8);
    ui->LCDDisplay->setBinMode();
}
//十进制
void Dialog::on_radioBtnDec_clicked()
{
    ui->LCDDisplay->setDigitCount(3);
    ui->LCDDisplay->setDecMode();
}
//十六进制
void Dialog::on_radioBtnHex_clicked()
{
    ui->LCDDisplay->setDigitCount(3);
    ui->LCDDisplay->setHexMode();
}
//八进制
void Dialog::on_radioBtnOct_clicked()
{
    ui->LCDDisplay->setDigitCount(4);
    ui->LCDDisplay->setOctMode();
}

Qt:16---Dispaly Widgets控件的使用_Dispaly  Widgets_11

五、Horizontal Line、Vertical Line
  • Horizontal Line:水平分隔符
  • Vertical Line:垂直分隔符

Qt:16---Dispaly Widgets控件的使用_进度条_12Qt:16---Dispaly Widgets控件的使用_ui界面_13Qt:16---Dispaly Widgets控件的使用_进度条_14

六、Calendar Widget
  • 日历控件

Qt:16---Dispaly Widgets控件的使用_git_15Qt:16---Dispaly Widgets控件的使用_动态图_16

信号

  • selectionChanged(); //在日历上选择的日期变化后发射此信号

演示案例

Qt:16---Dispaly Widgets控件的使用_Dispaly  Widgets_17

Qt:16---Dispaly Widgets控件的使用_git_18

七、Graphics View
  • 概念:图片查看器

 Qt:16---Dispaly Widgets控件的使用_动态图_19Qt:16---Dispaly Widgets控件的使用_git_20