QVBoxLayout *lay = new QVBoxLayout(this); // 创建一个竖直的盒子 lebel 篇 lay->addWidget(label = new QLabel("<a href=www.baidu.com>baidu</a>")); //设置成百度的链接
label->setPixmap(QPixmap("1.png")); //显示位图
connect(label,&QLabel::linkActivated,[](QString str){
qDebug()<<str;
}); button 类
lay->addWidget(button = new QPushButton("button"));
button->setStyleSheet("QPushButton {font:bold 16px; color:red}"); //html格式设置字体 红色 16 像素 bold是黑体
lay->addWidget(radio = new QRadioButton("radiobutton"));
radio->setStyleSheet("QRadioButton {font:bold 16px; color:red}");
lay->addWidget(new QCheckBox("check")); comboBox 篇
lay->addWidget(combox = new QComboBox());
combox->addItem("1"); // 增加一个选项
combox->addItem("2"); // 增加两个选项
combox->setEditable(true); // 设置选项可编辑
combox->setCompleter(new QCompleter(combox->model())); //设置默认匹配 TextEdit 篇
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>"
"</table><br>"
"<img src=1.png></img>");
edit->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded); //设置数值滚动条,根据需要
// img src= 图片地址的缩写
html格式的表格 border为边界 <tr> 是行 <th> 是表头 <td> 是单元格
<table> 表的开头 <br>换行相当于"\n"
slider 和 spinbox 篇
QSlider *slider;
lay->addWidget(slider = new QSlider(Qt::Horizontal));
slider->setMaximum(100);
slider->setMinimum(0);
QSpinBox *spinbox;
lay->addWidget(spinbox = new QSpinBox);
spinbox->setMaximum(100);
spinbox->setMinimum(0);
connect(slider,SIGNAL(valueChanged(int)),spinbox,SLOT(setValue(int))); //连接spinbox 和 slider
connect(spinbox,SIGNAL(valueChanged(int)),slider,SLOT(setValue(int))); // 一方值改变同时引起设置另外一个的值 LCD 篇
QLCDNumber *lcd;
lay->addWidget(lcd = new QLCDNumber(10)); //设置大小
lcd->display("12345:6"); //显示数字或者字符串
lcd->setSegmentStyle(QLCDNumber::Flat); //设置段落风格
时间: 2024-10-23 19:10:54