QGroupBox的使用
来源:互联网 发布:java hash算法 编辑:程序博客网 时间:2024/06/15 05:52
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QGroupBox>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow();private: QGroupBox *createFirstExclusiveGroup(); QGroupBox *createSecondExclusiveGroup(); QGroupBox *createNonExclusiveGroup(); QGroupBox *createPushButtonGroup(); Ui::MainWindow *ui;};#endif // MAINWINDOW_H
下面是cpp#include "mainwindow.h"#include "ui_mainwindow.h"#include <QGridLayout>#include <QRadioButton>#include <QCheckBox>#include <QPushButton>#include <QGridLayout>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); QGridLayout *grid = new QGridLayout; grid->addWidget(createFirstExclusiveGroup(),0,0); grid->addWidget(createSecondExclusiveGroup(),0,1); grid->addWidget(createNonExclusiveGroup(),1,0); grid->addWidget(createPushButtonGroup(),1,1); QWidget *widget = new QWidget; widget->setLayout(grid); widget->resize(480, 320); setCentralWidget(widget); setWindowTitle(tr("Group Boxes"));}MainWindow::~MainWindow(){ delete ui;}QGroupBox *MainWindow::createFirstExclusiveGroup(){ QGroupBox *groupBox = new QGroupBox(tr("Exclusive Radio Buttons"));// groupBox->setStyleSheet("QGroupBox{background:red}"); groupBox->setStyleSheet( "QGroupBox" "{" "border: 3px solid white;"//边框3px是粗细。white是颜色 "border-radius:8px;" "margin-top:6px;" "}" "QGroupBox:title" "{" "color:white;" "subcontrol-origin: margin;" "left: 10px;" "}" ); QRadioButton *radio1 = new QRadioButton(tr("&Radio button 1")); QRadioButton *radio2 = new QRadioButton(tr("R&adio button 2")); QRadioButton *radio3 = new QRadioButton(tr("Ra&dio button 3")); radio1->setChecked(true); QVBoxLayout *vbox = new QVBoxLayout; vbox->addWidget(radio1); vbox->addWidget(radio2); vbox->addWidget(radio3); vbox->addStretch(1); groupBox->setLayout(vbox); return groupBox;}QGroupBox *MainWindow::createSecondExclusiveGroup(){ QGroupBox *groupBox = new QGroupBox(tr("E&xclusive Radio Buttons")); groupBox->setCheckable(true); groupBox->setChecked(true); QRadioButton *radio1 = new QRadioButton(tr("Rad&io button1")); QRadioButton *radio2 = new QRadioButton(tr("Radi&o buttoon2")); QRadioButton *radio3 = new QRadioButton(tr("Radio &button3")); radio1->setChecked(true); QCheckBox *checkBox = new QCheckBox(tr("Ind&ependent checkbox")); checkBox->setChecked(true); QVBoxLayout *vbox = new QVBoxLayout; vbox->addWidget(radio1); vbox->addWidget(radio2); vbox->addWidget(radio3); vbox->addWidget(checkBox); groupBox->setLayout(vbox); return groupBox;}QGroupBox *MainWindow::createNonExclusiveGroup(){ QGroupBox *groupBox = new QGroupBox(tr("No-Exclusive Checkboxes")); groupBox->setFlat(true); QCheckBox *checkBox1 = new QCheckBox(tr("&Checkbox 1")); QCheckBox *checkBox2 = new QCheckBox(tr("C&heckbox 2")); checkBox2->setChecked(true); QCheckBox *tristateBox = new QCheckBox(tr("Tri-&state buttton")); tristateBox->setTristate(true);//是否启用三种状态切换 tristateBox->setCheckState(Qt::PartiallyChecked);//介于Qt::Unchecked和Qt::Checked之间 QVBoxLayout *vbox = new QVBoxLayout; vbox->addWidget(checkBox1); vbox->addWidget(checkBox2); vbox->addWidget(tristateBox); vbox->addStretch(1); groupBox->setLayout(vbox); return groupBox;}QGroupBox *MainWindow::createPushButtonGroup(){ QGroupBox *groupBox = new QGroupBox(tr("&Push Button")); groupBox->setCheckable(true); groupBox->setChecked(true); QPushButton *pushButton = new QPushButton(tr("&Normal Button")); QPushButton *toggleButton = new QPushButton(tr("&Toggle Button")); toggleButton->setCheckable(true); toggleButton->setChecked(true); QPushButton *flatButton = new QPushButton(tr("&Flat Button")); flatButton->setFlat(true); QPushButton *popupButton = new QPushButton(tr("Pop&up Button")); QMenu *menu = new QMenu(this); menu->addAction((tr("&First Item"))); menu->addAction((tr("&Second Item"))); menu->addAction((tr("Third Item"))); menu->addAction(tr("F&ourth Item")); popupButton->setMenu(menu); QAction *newAction = menu->addAction(tr("Submenu")); QMenu *subMenu = new QMenu(tr("Popup Submenu")); subMenu->addAction(tr("Item 1")); subMenu->addAction(tr("Item 2")); subMenu->addAction(tr("Item 3")); newAction->setMenu(subMenu); QVBoxLayout *vbox = new QVBoxLayout; vbox->addWidget(pushButton); vbox->addWidget(toggleButton); vbox->addWidget(flatButton); vbox->addWidget(popupButton); groupBox->setLayout(vbox); return groupBox;}//其他风格QString qss1="QGroupBox {\border: 2px solid #0000EE;\border-radius: 5px;\margin-top: 1ex; \font-family:仿宋;\
font:blod 14px;\}\
QGroupBox::title {\subcontrol-origin: margin;\subcontrol-position: top center;\padding: 0 3px;\}";
QString qss2="QLabel{\padding: 2px;\font-family:华文新魏;\
color:white;\
font:bold 16px;\}";
阅读全文
0 0
- QGroupBox控件的使用
- QGroupBox的使用
- 复选框的使用 QgroupBox
- QGroupBox
- QT 中QGroupbox的Title垂直居中
- Qt的QGroupBox布局不能显示
- 专题:QGroupBox类的使用-来自《零基础学Qt 4编程》一书的第7章
- QT之QGroupBox
- Qt之QGroupBox
- Qt之QGroupBox
- QGroupBox QToolBox QComboBox
- Qt之QGroupBox
- QSS美化之QGroupBox
- QGroupBox应用,extension widget create!
- Qt QGroupBox切换调用问题
- QT之qss教程-QGroupBox
- QGroupBox设置边框后title下沉
- Qt QGroupBox在linux下显示边框
- 利用Matlab将图片转换成素描(简笔画)风格
- 第二部分 排序和顺序统计量 第 6 章 堆排序
- 2017-06-08 每日一记 sqlite3_bind_blob函数
- shell变量含义
- 浅谈Jquery中的bind(),live(),delegate(),on()绑定事件方式
- QGroupBox的使用
- 习题5-7 使用函数求余弦函数的近似值
- angularJS之mac安装
- Linux运维常用脚本整理
- Sybase数据库的开启关闭
- 刷清橙OJ--A1085.2n皇后问题
- C# 开发环境搭建
- Replace Inheritance with Delegation(以继承取代委托)
- Java语言的动态性-invokedynamic