QT widget 使用小计
2016-11-14 22:15
239 查看
push button
信号:clicked()实例代码:
connect(ui->lxpushButton, SIGNAL(clicked()), this, SLOT(myslots()));
tool box
实例代码:action = new QAction("&Open", this); action2 = new QAction("&Close", this); menu = new QMenu(); QList<QAction *> fileActions; fileActions.push_back(action); fileActions.push_back(action2); menu->addMenu("&File")->addMenu("web safe")->addActions(fileActions); menu->addMenu("&Edit")->addMenu("app safe")->addActions(fileActions); ui->lxtoolButton->setText("tool box"); ui->lxtoolButton->setPopupMode(QToolButton::InstantPopup); ui->lxtoolButton->setMenu(menu); connect(ui->lxtoolButton, SIGNAL(triggered(QAction *)), this, SLOT(paction(QAction *)));
效果:
group box
实例代码:ui->gbSetNetWork->setChecked(false); ui->gbSetNetWork->setStyleSheet( QString::fromUtf8("QGroupBox\ { border: 1px solid green; \ // 设置边框1个像素,绿色填充 border-radius: 4px; \ // 实现圆角边框效果,第一个参数是水平半径 margin-top: 6px\ // 设置对象顶边的外延边距,外延边距始终透明 }\ QGroupBox::title{top: -9 ex; left:8px}}")); // 设置标题显示的样式
效果:
QToolBox
信号: currentChanged实例代码:
connect(ui->toolBox, SIGNAL(currentChanged(int)), this, SLOT(GetCurrent(int)));
QTabWidget
信号:tabCloseRequested(int) currentChanged(int)
实例代码:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->tabWidget, SIGNAL(tabCloseRequested(int)), this, SLOT(CloseTab(int))); connect(ui->tabWidget, SIGNAL(currentChanged(int)), this, SLOT(PrintTab(int))); } void MainWindow::CloseTab(int index) { ui->tabWidget->removeTab(index); } void MainWindow::PrintTab(int index) { qDebug() << "print tab " << index; }
属性:
属性名 | 注释 |
---|---|
tabsClosable | 设置Tab是否可以关闭 |
movable | 设置Tab是否可以左右拖动 |
TabShape | 设置Tab的形状 |
QComboBox
信号:信号名 | 注释 |
---|---|
activated (int index) (const QString&) | 点击任意一项即会触发,SetCurrentIndex调用时不会触发 |
currentIndexChanged (int index) (const QString&) | 点击任意一项即会触发,SetCurrentIndex调用时也会触发 |
editTextChanged (int index) (const QString&) | 当combobox属性edit是true时,如果修改文本,该信号在每次输入时会触发 |
highlighted (int index) (const QString&) | combobox中鼠标放在任何一个选项上即会触发 |
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->comboBox, SIGNAL(activated(const QString&)), this, SLOT(ActivatedGet(const QString&))); connect(ui->comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(currentIndexChangedGet(int))); connect(ui->comboBox, SIGNAL(editTextChanged(const QString&)), this, SLOT(editText(const QString &))); connect(ui->comboBox, SIGNAL(highlighted(const QString&)), this, SLOT(high(const QString&))); } void MainWindow::ActivatedGet(const QString &str) { qDebug() << "activated " << str; } void MainWindow::currentIndexChangedGet(int index) { qDebug() << "currentIndexChanged " << index; } void MainWindow::editText(const QString &str) { qDebug() << "editTextChanged " << str; } void MainWindow::high(const QString &str) { qDebug() << "highlighted" << str; }
属性:
属性名 | 注释 |
---|---|
editable | 设置combobox是否可以修改内容 |
QLineEdit
信号:信号名 | 注释 |
---|---|
cursorPositionChanged(int old, int cur) | 光标在编辑框中游走时即会出发,old标示光标之前的位置,cur标示现在位置 |
editingFinished() | |
returnPressed() | 按回车即触发 |
selectionChanged() | 鼠标选中条目时触发 |
textChanged(const QString&) | 文本改变时触发 |
textEdited(const QString&) | 文本改变时触发 |
ui->lineEdit_1->setValidator(new QIntValidator(1, 100, this)); QRegExp regx("[a-zA-Z0-9]+$"); QValidator *validator = new QRegExpValidator(regx, ui->lineEdit_2); ui->lineEdit_2->setValidator(validator); ui->lineEdit_3->setInputMask("000.000.000.000"); ui->lineEdit_4->setEchoMode(QLineEdit::Password); connect(ui->lineEdit_1, SIGNAL(cursorPositionChanged(int, int)), this, SLOT(curChg(int, int))); connect(ui->lineEdit_1, SIGNAL(editingFinished()), this , SLOT(editOver)); connect(ui->lineEdit_1, SIGNAL(returnPressed()), this, SLOT(returnPress())); connect(ui->lineEdit_1, SIGNAL(selectionChanged()), this, SLOT(selectChanged())); connect(ui->lineEdit_1, SIGNAL(textChanged(const QString&)), this, SLOT(textChange(const QString&))); connect(ui->lineEdit_1, SIGNAL(textEdited(const QString&)), this, SLOT(textEdited(const QString&)));
效果:
QSpinBox
信号:信号名 | 注释 |
---|---|
valueChanged(const QString &) (int) | 值是有效变化的时候即触发 |
connect(ui->spinBox, SIGNAL(valueChanged(const QString &)), this, SLOT(valChg(const QString &)));
属性:
属性名 | 注释 |
---|---|
wrapping | 当设置true时, 计数到最大值即反转到最小值重新计数 |
buttonSymbols | 设置spinBox显示按钮的风格 |
Minimum | 设置最小有效数 |
Maximum | 设置最大有效数 |
singleStep | 设置每次改变的步长 |
QDateTimeEdit
信号:dateChanged(const QDate &) timeChanged(const QTime &) dateTimeChanged(const QDateTime &)
日期格式:
时间格式:
实例代码:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->dateTimeEdit, SIGNAL(dateChanged(const QDate &)), this, SLOT(dateChgGet(const QDate &))); connect(ui->dateTimeEdit, SIGNAL(timeChanged(const QTime &)), this, SLOT(timeChgGet(const QTime &))); connect(ui->dateTimeEdit, SIGNAL(dateTimeChanged(const QDateTime &)), this, SLOT(dateTimeChgGet(const QDateTime &))); ui->dateTimeEdit->setTime(QTime::currentTime()); ui->dateTimeEdit->setDate(QDate::currentDate()); ui->dateTimeEdit->setDisplayFormat("yyyy.MM.dd aph:mm:ss:z"); ui->dateTimeEdit->setCalendarPopup(true); }
效果:
QSlider
信号:valueChanged(int) sliderPressed() sliderMoved(int) sliderReleased()
实例代码:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->horizontalSlider, SIGNAL(valueChanged(int)), this, SLOT(valChg(int))); connect(ui->horizontalSlider, SIGNAL(sliderPressed()), this, SLOT(sliderPressed())); connect(ui->horizontalSlider, SIGNAL(sliderMoved(int)), this, SLOT(sliderMoved(int))); connect(ui->horizontalSlider, SIGNAL(sliderReleased()), this, SLOT(sliderRelease())); }
属性:
tickPosition tickInterval
效果:
QLabel
信号:linkActivated(const QString &link) linkHovered(const QString &link)
实例代码:
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); ui->label->setTextFormat(Qt::RichText); ui->label->setText(tr("<a href=\"http://www.baidu.com/\">clicked me</a>")); ui->label_3->setTextFormat(Qt::RichText); ui->label_3->setText(tr("<font size=3 color=green><I>test</T></font>")); QPixmap *p = new QPixmap(30, 20); p->fill(Qt::darkMagenta); ui->label_2->setPixmap(*p); connect(ui->label, SIGNAL(linkHovered(const QString &)), this, SLOT(linkHovered(const QString &))); connect(ui->label, SIGNAL(linkActivated(const QString &)), this, SLOT(linkActivated(const QString &))); }
效果:
相关文章推荐
- EXCEL 公式使用小计 生成sql 语句 判断某一数据是否在另一列中出现
- 使用DATATGRID实现分组小计功能
- Oracle关于Group by合计、小计的使用
- 【小计】QWT类的一些使用方法
- 【雕虫小计win PE】使用GHOST备份还原操作系统 推荐
- VMProtect使用小计【一】
- 使用SQL实现小计,合计以及排序
- Oracle分组小计、总计示例(grouping sets的使用)
- ecshop购物车页面使用ajax更新商品数量、小计、总价,点击加号和减号
- 使用DATATGRID实现分组小计功能
- jquery的ajax,post,get使用小计1
- Oracle分组小计、总计示例(grouping sets的使用)
- 【转】TortoiseGit GitHub 使用小计
- Oracle 使用分析函数实现小计合计
- 数据分组--聚合函数使用范例(小计,统计,汇总)实例
- Reporting Service应用技巧(2)—矩阵中小计功能的使用
- HD64570 使用小计
- Zabbix 使用小计
- [C#]『Parallel.For』『Parallel.ForEach』任务并行库使用小计
- EF 6.0使用小计