#include "widget.h"
#include "qlabel.h"
#include "QVBoxLayout"
#include "QHBoxLayout"
#include "QLineEdit"
#include"QCompleter"
#include"QTextEdit"
#include"QPushButton"
#include"QRadioButton"
#include"QComboBox"
#include"QGroupBox"
#include"QSlider"
#include"QTabWidget"
#include"QDebug"
void Widget::label_string(QString str)
{
qDebug()<<str;
}
void Widget::lineEdit_string(QString str)
{
qDebug()<<str;
}
void Widget::textEdit_string()
{
QTextEdit *edit=(QTextEdit*)sender();
qDebug()<<edit->toPlainText();
}
void Widget::closeTab(int i)
{
QTabWidget *tab =(QTabWidget*)sender();
tab->removeTab(i);
}
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
QVBoxLayout *vLayout_1 = new QVBoxLayout;
QHBoxLayout *hLayout_1 = new QHBoxLayout;
QHBoxLayout *hLayout_2 = new QHBoxLayout;
//QLable
QLabel *qlable=new QLabel;
// qlable->setText("<font color = red>HELLO WORLD</font>");
// qlable->setStyleSheet("QLabel{font:bold 24pix;color:green}");
qlable->setText("<a href=www.baidu.com>网址</a>");
vLayout_1->addWidget(qlable);
connect(qlable,SIGNAL(linkActivated(QString)),this,SLOT(label_string(QString)));
this->setLayout(vLayout_1);
//QLable
//QLineEdit
QLineEdit *linEdit = new QLineEdit;
linEdit->setCompleter(new QCompleter(QStringList()<<"你好!"<<"你好不好啊?"<<"我不好"));
vLayout_1->addWidget(linEdit);
connect(linEdit,SIGNAL(textChanged(QString)),this,SLOT(lineEdit_string(QString)));
this->setLayout(vLayout_1);
//QLineEdit
//QTextEdit
QTextEdit* textEdit=new QTextEdit;
// textEdit->setText("<table border=1><tr><th>学号<th>姓名<th>班级"
// "<tr><td>1001<td>张三<td>141"
// "<tr><td>1002<td>李四<td>142");
textEdit->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
vLayout_1->addWidget(textEdit);//textEdit
connect(textEdit,SIGNAL(textChanged()),this,SLOT(textEdit_string()));
this->setLayout(vLayout_1);
//QTextEdit
// QPushButton *btn=new QPushButton;
// btn->setText("按钮");
// vLayout_1->addWidget(btn);
// this->setLayout(vLayout_1);
// QpushButton
// QRadioButton
QRadioButton *radio1 = new QRadioButton("男");
QRadioButton *radio2 = new QRadioButton("女");
vLayout_1->addWidget(radio1);
hLayout_1->addWidget(radio2);
vLayout_1->addLayout(hLayout_1);
connect(radio1,&QRadioButton::toggled,[](bool bl){qDebug()<<bl;});
this->setLayout(vLayout_1);
// QRadioButton
//QComboBox
QComboBox *combo = new QComboBox;
combo->addItem("南京");
combo->addItems(QStringList()<<"上海"<<"无锡");
combo->setEditable(true);
vLayout_1->addWidget(combo);
connect(combo,SIGNAL(currentTextChanged(QString)),this,SLOT(lineEdit_string(QString)));
this->setLayout(vLayout_1);
//QComboBox
//QGroupBox
QGroupBox *group = new QGroupBox("按钮盒");
QPushButton *btn_1 = new QPushButton("确认");
QPushButton *btn_2 = new QPushButton("取消");
hLayout_2->addWidget(btn_1);
hLayout_2->addWidget(btn_2);
group->setLayout(hLayout_2);
vLayout_1->addWidget(group);
this->setLayout(vLayout_1);
//QGroupBox
//QSlider
QSlider *slider = new QSlider;
slider->setMaximum(100);
slider->setMinimum(0);
vLayout_1->addWidget(slider);
this->setLayout(vLayout_1);
//QSlider
//QTabWidget
QTabWidget *tab= new QTabWidget;
QPushButton *btn4=new QPushButton("but1");
QPushButton *btn5=new QPushButton("but2");
tab->addTab(btn4,"tab1");
tab->addTab(btn5,"tab2");
tab->setTabsClosable(true);
vLayout_1->addWidget(tab);
connect(tab,SIGNAL(tabCloseRequested(int)),this,SLOT(closeTab(int)));
this->setLayout(vLayout_1);
}
Widget::~Widget()
{
}