首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QComboBox,tabview,C++

QComboBox,tabview,C++
EN

Stack Overflow用户
提问于 2022-05-13 08:31:25
回答 2查看 49关注 0票数 0

我正在用tabview开发一个应用程序。我希望tabView根据ComboBox的选择更改小部件。例:如果选择了第一个索引,我希望tabView1出现,如果选择了第二个索引,我想让tabView2出现,我已经厌倦了几个方法,如果(str == "a")布局->tabView2 1;否则布局->tabView2 2。我还尝试了connect(combobox,SIGNAL(currentTextChanged()),this,SIGNAL(swithcall(),这是我在swticahll函数中不能做太多指令的主要问题之一,因为在这种情况下,我必须将tabview识别为全局变量,这不是最好的选择。有什么建议吗?

EN

回答 2

Stack Overflow用户

发布于 2022-05-13 15:49:09

您可以在连接线内使用lambdas,例如:

代码语言:javascript
复制
connect(combobox,&QComboBox::currentIndexChanged,this,[tabView](int index) mutable{
// change tabView as wanted
});

如果要按文本和索引进行更改(而不只是像这里这样的索引),可以使用(lambda中):

代码语言:javascript
复制
QString currText = combobox->currentText();
票数 1
EN

Stack Overflow用户

发布于 2022-05-15 10:49:46

您只需将QComboBox的信号currentIndexChanged连接到QTabWidgetsetCurrentIndex插槽(如connect(combobox, &QComboBox::cutrentIndexChanged, tabview, &QTabWidget::setCurrentIndex) ),并按照与combobox中的项目顺序相对应的所需顺序向tabview添加小部件。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72226616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档