一起看代码来玩玩QT之05 Controls
来源:互联网 发布:js判断只能输入正整数 编辑:程序博客网 时间:2024/05/16 09:18
pixmap : 像素图
combo : 组合
QObject::connect(&button,SIGNAL(clicked()),&w,SLOT(close()));此连接信号槽 可用 c++ lamboda表达式
connect(radio, &QRadioButton::clicked, [](bool v){ qDebug() << v; });这需要 在 项目pro 中 加 config += C++11
内容有点多,请诸位 一个一个控件看,最好亲手打一遍!!!!!!! 一个一个控件 试!!!!!!!!!
.h 文件
#ifndef MYWIDGET_H#define MYWIDGET_H#include <QWidget>#include <QTextEdit>class MyWidget : public QWidget{ Q_OBJECTpublic: explicit MyWidget(QWidget *parent = 0); QTextEdit* _edit;signals:public slots: void slotComboBoxIndexChanged(const QString&);};#endif // MYWIDGET_H
.cpp 文件
#include "MyWidget.h"#include <QApplication>#include <QLabel> // disply static text, or image#include <QPushButton>#include <QLineEdit> // single line#include <QComboBox>#include <QCheckBox>#include <QRadioButton>#include <QTextEdit> // multi lines, rich text#include <QTextBrowser> // readonly textedit#include <QGroupBox> //#include <QSlider> // 模拟方式显示数值#include <QSpinBox> // 数字#include <QDateEdit>#include <QTimeEdit>#include <QDateTimeEdit>#include <QTabWidget> // 不介绍,不算控件#include <QCompleter>#include <QHBoxLayout>#include <QDebug>#include <QPixmap>#include <QVBoxLayout>#include <QLCDNumber>MyWidget::MyWidget(QWidget *parent) : QWidget(parent){ QVBoxLayout* lay = new QVBoxLayout(this); QLabel* label; QComboBox* combo; QPushButton* button; QRadioButton* radio; QTextEdit* edit; QGroupBox* group; lay->addWidget(label = new QLabel("<a href=www.baidu.com>baidu</a>")); label->setPixmap(QPixmap("../aaa.png")); connect(label, &QLabel::linkActivated, [](QString str){ qDebug() << str; }); lay->addWidget(button = new QPushButton("Button")); button->setStyleSheet("QPushButton {font:bold 16px; color:red; padding:5px}"); lay->addWidget(radio = new QRadioButton("Radio")); radio->setStyleSheet("QRadioButton {font:bold 16px; color:red; padding:5px}"); connect(radio, &QRadioButton::clicked, [](bool v){ qDebug() << v; }); lay->addWidget(new QCheckBox("check box")); lay->addWidget(combo = new QComboBox()); combo->addItem("Select item1"); combo->addItem("Select item2"); combo->setEditable(true); connect(combo, SIGNAL(currentIndexChanged(QString)), this, SLOT(slotComboBoxIndexChanged(QString))); combo->setCompleter(new QCompleter(combo->model())); lay->addWidget(edit = new QTextEdit); edit->setText("<table border=1><tr><th>head1</th><th>head2</th></tr>" "<tr><td>value1</td><td>value2</td></tr>" "<tr><td>value3</td><td>value4</td></tr>" "</table><br>" "<img src=../aaa.png></img>"); _edit = edit; connect(edit, &QTextEdit::textChanged, [&](){ // QTextEdit* edit = (QTextEdit*)this->sender(); qDebug() << _edit->toPlainText(); }); edit->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); edit->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); lay->addWidget(group = new QGroupBox("Some items")); QHBoxLayout* hBoxLay; group->setLayout(hBoxLay = new QHBoxLayout); hBoxLay->addWidget(new QPushButton("aaaa")); hBoxLay->addWidget(new QPushButton("aaaa")); QSlider* slider; QSpinBox* spinBox; lay->addWidget(slider = new QSlider(Qt::Horizontal)); slider->setMaximum(100); slider->setMinimum(0); lay->addWidget(spinBox = new QSpinBox); spinBox->setMaximum(100); spinBox->setMinimum(0); connect(slider, SIGNAL(valueChanged(int)), spinBox, SLOT(setValue(int))); connect(spinBox, SIGNAL(valueChanged(int)), slider, SLOT(setValue(int))); lay->addWidget(new QDateTimeEdit); QLCDNumber* lcd; lay->addWidget(lcd = new QLCDNumber(10)); lcd->display(12345); lcd->setMode(QLCDNumber::Hex); lcd->setSegmentStyle(QLCDNumber::Outline);}void MyWidget::slotComboBoxIndexChanged(const QString &str){ qDebug() << "slotComboBoxIndexChanged" << str;}int main(int argc, char** argv){ QApplication app(argc, argv); MyWidget w; w.show(); return app.exec();}
1 0
- 一起看代码来玩玩QT之05 Controls
- 一起看代码来玩玩QT之01Hello world
- 一起看代码来玩玩QT之02LineEdit
- 一起看代码来玩玩QT之03coordinate
- 一起看代码来玩玩QT之04 Layout
- 一起看代码来玩玩QT之06Event
- 一起看代码来玩玩QT之07 Painter
- 一起看代码来玩玩QT之10 Graphics
- 一起看代码来玩玩QT之11 Dialog
- 一起看代码来玩玩QT之17 json
- 一起看代码来玩玩QT之19 Process(进程)
- 一起看代码来玩玩QT之21 HttpClient
- 一起看代码来玩玩QT之23 audioRecord
- 一起看代码来玩玩QT之24 AudioPlayer
- 一起看代码来玩玩QT之06EventFilter (事件过滤)
- 一起看代码来玩玩QT之08 Draw(first projiect 画板)
- 一起看代码来玩玩QT之09 Signal and SLOT ( 信号和槽)
- 一起看代码来玩玩QT之12 MainWindow(menubar menu ……)
- iOS WebView JS 交互
- Uri类型理解
- spring学习——配置文件
- android 65535解决方案
- php中的curl使用入门教程和常见用法实例
- 一起看代码来玩玩QT之05 Controls
- Android Studio实现代码混淆
- DC4C代码阅读(7)——DAG
- 【bzoj2654】tree MST+二分法
- 正则表达式验证案例
- The Swift Programming Language学习笔记(三)——基本运算符
- noj 1079 111...
- java分布式对象(RMI+部署使用RMI的程序)
- (*(volatile unsigned int *))详解