大橙子网站建设,新征程启航

为企业提供网站建设、域名注册、服务器等服务

c++中Qt容器窗口怎么用

这篇文章主要介绍c++中Qt容器窗口怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

创新互联专注于网站建设|成都网站维护|优化|托管以及网络推广,积累了大量的网站设计与制作经验,为许多企业提供了网站定制设计服务,案例作品覆盖成都广告制作等行业。能根据企业所处的行业与销售的产品,结合品牌形象的塑造,量身定制品质网站。

容器(Container)

Qt里提供多种容器窗口:

1、选项卡窗口 QTabWidget

2、堆叠窗口  QStackedWidget

3、工具窗口  QToolBox 

一、选项卡窗口

容纳多个子窗口,每个子窗口显示一个标签(选项卡)。当标签被点击时,此窗口置于最前。

实现方式:

1、使用Qt Designer

2、手动添加 Widget

c++中Qt容器窗口怎么用

二、堆叠窗口

容纳多个Widget,每个Wdiget称为一页

没有标签,由其他窗口控制

通常可以做向导程序

显示第几页: setCurrectIndex();

小练习:做一个这样的界面:

c++中Qt容器窗口怎么用

Test9_2a_12_9::Test9_2a_12_9(QWidget *parent)
	: QMainWindow(parent)
{
	ui.setupUi(this);
	assert(
		connect(
			ui.btnPage1,
			SIGNAL(clicked()),
			this,
			SLOT(OnBtnPage1())
			)
		);
	assert(
		connect(
			ui.btnPage2,
			SIGNAL(clicked()),
			this,
			SLOT(OnBtnPage2())
			)
		);
	assert(
		connect(
			ui.btnPage3,
			SIGNAL(clicked()),
			this,
			SLOT(OnBtnPage3())
			)
		);
}

int Test9_2a_12_9::OnBtnPage1()
{
	ui.stackedWidget->setCurrentIndex(0);
	return 0;
}

int Test9_2a_12_9::OnBtnPage2()
{
	ui.stackedWidget->setCurrentIndex(1);
	return 0;
}

int Test9_2a_12_9::OnBtnPage3()
{
	ui.stackedWidget->setCurrentIndex(2);
	return 0;
}

三、工具窗口

容纳多个Widget,每个Wdiget称为一页

小练习:

做如下的界面

c++中Qt容器窗口怎么用

c++中Qt容器窗口怎么用

c++中Qt容器窗口怎么用

实现代码:

Test9_3a_12_9::Test9_3a_12_9(QWidget *parent)
	: QMainWindow(parent)
{
	ui.setupUi(this);
	assert(
		connect(
			ui.btnName,
			SIGNAL(clicked()),
			this,
			SLOT(OnBtnName())
			)
		);
	assert(
		connect(
			ui.btnPasswd,
			SIGNAL(clicked()),
			this,
			SLOT(OnBtnPasswd())
			)
		);
	assert(
		connect(
			ui.btnLogin,
			SIGNAL(clicked()),
			this,
			SLOT(OnBtnLogin())
			)
		);
}

int Test9_3a_12_9::OnBtnName()
{
	ui.stackedWidget->setCurrentIndex(0);
	return 0;
}

int Test9_3a_12_9::OnBtnPasswd()
{
	ui.stackedWidget->setCurrentIndex(1);
	return 0;
}

int Test9_3a_12_9::OnBtnLogin()
{
	ui.stackedWidget->setCurrentIndex(2);
	return 0;
}

以上是“c++中Qt容器窗口怎么用”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


新闻名称:c++中Qt容器窗口怎么用
网址分享:http://dzwzjz.com/article/gcjejp.html
在线咨询
服务热线
服务热线:028-86922220
TOP