⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 button.cpp

📁 《Linux程序设计权威指南》一书qt下的源码
💻 CPP
字号:
#include "button.h"#include <qlabel.h>#include <qtextcodec.h>#include <qpixmap.h>#include <qmovie.h>#include <qbuttongroup.h>#include <qlayout.h>#include <qradiobutton.h>#include <qcheckbox.h>#include <qpushbutton.h>LabelButton::LabelButton( QWidget *parent, const char *name )    : QWidget( parent, name){	//建立布局组件	QVBoxLayout *vbox = new QVBoxLayout( this );	QHBoxLayout *box1 = new QHBoxLayout( vbox );	QHBoxLayout *box2 = new QHBoxLayout( vbox );	QHBoxLayout *box3 = new QHBoxLayout( vbox );	//建立标签	box1->setAlignment( AlignLeft );	QLabel *label1 = new QLabel(tr("标签和按钮演示"), this);	label1->setFrameStyle( QFrame::Panel | QFrame::Sunken );	box1->addWidget( label1 );	QLabel *label2 = new QLabel(this);	label2->setPixmap(QPixmap("qtlogo.gif"));	box1->addWidget( label2 );	QLabel *label3 = new QLabel(this);	label3->setMovie(QMovie("trolltech.gif"));	box1->addWidget( label3 );	//建立第一组: 多选按钮组	QButtonGroup *grp1 = new QButtonGroup(1, QGroupBox::Horizontal, 		tr("多选按钮组(QCheckBox)"), this );	box2->addWidget( grp1 );	grp1->setExclusive( FALSE );	//在它里面加入三个按钮	(void)new QCheckBox( "&Checkbox 1", grp1 );	QCheckBox *cb12 = new QCheckBox( "C&heckbox 2", grp1 );	cb12->setPixmap(QPixmap("qtlogo.gif"));	cb12->setChecked( TRUE );	QCheckBox *cb13 = new QCheckBox( tr("三个状态的按钮(&S)"), grp1 );	cb13->setTristate( TRUE );	cb13->setChecked( TRUE );	//建立第二组: 单选按钮组	QButtonGroup *grp2 = new QButtonGroup( 1, QGroupBox::Horizontal, 		tr("单选按钮组(QRadioButton)"), this);	box2->addWidget( grp2 );	grp2->setExclusive( TRUE );	//加入三个单选按钮	QRadioButton *rb11 = new QRadioButton( "&Radiobutton 1", grp2 );	rb11->setChecked( TRUE );	(void)new QRadioButton( "R&adiobutton 2", grp2 );	(void)new QRadioButton( "Ra&diobutton 3", grp2 );	//建立第三组	QButtonGroup *grp3 = new QButtonGroup( 1, QGroupBox::Horizontal, 		tr("单选按钮组, 演示按钮禁止状态"), this );	box3->addWidget( grp3 );	grp3->setRadioButtonExclusive( TRUE );	rb21 = new QRadioButton( "Rad&iobutton 1", grp3 );	rb22 = new QRadioButton( "Radi&obutton 2", grp3 );	rb23 = new QRadioButton( "Radio&button 3", grp3 );	rb23->setChecked( TRUE );	state = new QCheckBox( tr("激活单选按钮(&n)"), grp3 );	state->setChecked( TRUE );	//设置回调	connect( state, SIGNAL( clicked() ), 		this, SLOT( slotChangeGrp3State() ) );	//建立第四组: 普通按钮和切换按钮	QGroupBox *grp4 = new QButtonGroup( 1, QGroupBox::Horizontal, 		tr("普通按钮和切换按钮"), this );	box3->addWidget( grp4 );	(void)new QPushButton( tr("普通按钮(&P)"), grp4 );	QPushButton *tb = new QPushButton( tr("切换按钮(&T)"), grp4 );	tb->setToggleButton( TRUE );	tb->setOn( TRUE );}void LabelButton::slotChangeGrp3State(){	rb21->setEnabled( state->isChecked() );	rb22->setEnabled( state->isChecked() );	rb23->setEnabled( state->isChecked() );}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -