QT5:控件

复制代码
Layouts

Spacers

Buttons

Item Views(Model-Based)

Item Widgets(Item-Based)

Containers

Input Widgets

Display Widgets

Label

Text Browser

Graphics View

Calendar Widget

LCD Number

Progress Bar

Horizontal Line

Vertical Line

OpenGL Widget

QQuickWidget
复制代码

 

一.布局排版控件

在QT组件面板中有Layouts和Spacers两个组件面板

注意:布局排版控件不显示

 

复制代码
//Layouts(布局)

Vertical Layout:垂直方向布局,组件自动在垂直方向上分布

Horizontal Layout:水平方向布局,组件自动在水平方向上分布

Grid Layout:网格状布局,网格布局大小改变时,每个网格的大小都改变

Form Layout:窗体布局,与网格状布局类似,但是只有最右侧的一列网格会改变大小

(1)ui文件实现
 

(2)代码实现
复制代码

 

复制代码
//Spacers(排版)

Horizontal Spacer:一个用于水平分隔的空格

Vertival Spacer:一个用于垂直分隔的空格

(1)ui文件实现
 

(2)代码实现
复制代码

 

二.按钮控件

按钮控件一共有六种:pushButton
                 toolButton
                 radioButton
                 checkBox
                 commandLinkButton
                 dialogButtonBox

 

复制代码
//pushButton

(1)创建pushButton

// mainWindow.h<br><br>#include <QPushButton>
 
class MainWindow : public QMainWindow
{
 
private:
    QPushButton* pushButton;                  
}

// mainWindow.cpp
 
MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
 
    pushButton=new QPushButton(this); 
}

(2)pushButton成员函数

void setFlat(bool);
void setMenu(QMenu* menu);
void showMenu();
void setDefault(bool);
void setAutoDefault(bool);

QString tr(const char* s, const char* c, int n);
QString QAbstractButton::tr(const char* s, const char* c, int n);
QString QWidget::tr(const char* s, const char* c, int n);
QString QObject::tr(const char* s, const char* c, int);

pushButton->setText(tr("显示面积"));
复制代码

 

1.pushButton

复制代码
QPushButton* btn = new QPushButton;
//btn->show();             //show以顶层方式弹出窗口控件
btn->setParent(this);    //让btn对象依赖在mywidget窗口中

//显示文本
btn->setText("第一个按钮");

//创建第二个按钮 按照控件的大小创建窗口
QPushButton* btn2 = new QPushButton("第二个按钮", this);

//移动btn2按钮
btn2->move(100, 100);

//按钮可以重新设置大小
btn2->resize(50, 50);

//设置固定窗口大小
setFixedSize(600, 400);

//设置窗口标题
setWindowTitle("第一个窗口");
复制代码

 

 

 

 

三.输入控件

复制代码
输入控件一共有16种:comboBox

           fontComboBox

           lineEdit

           testEdit

           plainTextEdit

           spinBox

           doubleSpinBox  

           timeEdit

           dateEdit

           date/timeEdit

           dial

           horizontalScrollBar

           verticalScrollBar

           horizontalSlider

           verticalSlider

           keySequenceEdit
复制代码

 

复制代码
(1)lineEdit

// mainWindow.h
 
#include <QLineEdit>
  
class MainWindow : public QMainWindow
{
  
private:
    QLineEdit* lineEdit;                 
}


// mainWindow.cpp
  
MainWindow::MainWindow(QWidget* parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
  
    lineEdit=new QLineEdit(this);
}
复制代码

 

四.显示控件

复制代码
在显示控件(Display Widgets)中,有10种类型的显示控件

Label

Text Browser

Graphics View

Calendar Widget

LCD Number

Progress Bar

Horizontal Line

Vertical Line

OpenGL Widget

QQuickWidget
复制代码

 

复制代码
//Label

#include <QLable>

int main(int argc, char* argv[])
{
    QLabel* label = new QLabel();
    ...
    delete label;
}
复制代码

 

posted @   言午丶  阅读(163)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示