zoukankan      html  css  js  c++  java
  • 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;
    }
  • 相关阅读:
    搬家来博客园了
    公司初印象
    毕业之殇觉醒
    毕业之殇天意弄人
    毕业之殇预告篇
    scribe 安装文档
    毕业之殇寻找
    IOS 资料整理(转)
    IOS IPHONE相册应用 资料整理
    NSFileManager和NSFileHandle(附:获取文件大小 )
  • 原文地址:https://www.cnblogs.com/k5bg/p/15627672.html
Copyright © 2011-2022 走看看