回复: Qt编写通用顶部导航源码
#16 [twodiamond 10-25 10:04]
一直很崇拜刘工的举重若轻,以前研究过刘工的ECS工程(基于九宫格的图标页面),这个是基于 QStackedWidget 的,有问题想要请教:
1、在这个工程的AppInit::Instance函数中,QMutex的作用是什么?
AppInit *AppInit::Instance()
{
if (!self) {
QMutex mutex;
QMutexLocker locker(&mutex);
if (!self) {
self = new AppInit;
}
}
return self;
}
2、QStackedWidget 的addWidget是否为硬copy?
QWidget *widget1 = new QWidget();
QWidget *widget2 = new QWidget();
QWidget *widget2 = new QWidget();
QStackedWidget *pWidgets;
pStackPage->addWidget(widget1 );
pStackPage->addWidget(widget2 );
pStackPage->addWidget(widget2 );
在此处,QStackedWidget还是只象 QListWidget 一样,仅仅是一个指针入栈呢?
谢谢!
#17 [thematic971 10-27 09:36]
学习了 感谢分享
#18 回 twodiamond 的帖子 [liudianwu 10-27 10:40]
twodiamond:一直很崇拜刘工的举重若轻,以前研究过刘工的ECS工程(基于九宫格的图标页面),这个是基于 QStackedWidget 的,有问题想要请教:
1、在这个工程的AppInit::Instance函数中,QMutex的作用是什么?
AppInit *AppInit::Instance()
{
....... (2017-10-25 10:04)
QMutex锁住,就可以防止多线程调用此函数造成多次实例化。
QStackedWidget 每次new之后,都分配了一个内存给该窗体,应该可以理解为硬copy
#19 [twodiamond 10-28 14:45]
多谢刘工
#20 [joeaaron 10-30 14:37]
刘大师,我在顶部导航栏加入QComboBox为何起不了作用?