您现在的位置是:首页» windows系统» qt设置tab标签,qttabbar标签栏怎么设置

qt设置tab标签,qttabbar标签栏怎么设置

2023-12-05 05:04:13
今天小编为大家分享Windows系统下载、Windows系统教程、windows相关应用程序的文章,希望能够帮助到大家! 在一个应用程序上工作,我有选项卡名称的问题。当我点击按钮(新)时,我想动态创建新标签。bool MainWindow::toolbarNewFile() QTextEdit*codeE

今天小编为大家分享Windows系统下载、Windows系统教程、windows相关应用程序的文章,希望能够帮助到大家!

在一个应用程序上工作,我有选项卡名称的问题。当我点击按钮(新)时,我想动态创建新标签。

bool MainWindow::toolbarNewFile()

QTextEdit*codeEditor= new QTextEdit;

QGridLayout*layout= new QGridLayout;

layout->addWidget(codeEditor);

tab_widget->addTab(page,"File");

如何在标签名称编号中设置。当我制作新选项卡时,自动设置选项卡的编号如下。

我试着设置counter i=0;并在addTab(page,"File-"+ i++);不起作用。

I working on one application and I have problem with tab name. When I click on push button(NEW) I want to dynamically create new tab.

With this function i create new file:

bool MainWindow::toolbarNewFile()

QTextEdit*codeEditor= new QTextEdit;

QGridLayout*layout= new QGridLayout;

layout->addWidget(codeEditor);

tab_widget->addTab(page,"File");

How to set in tab name number. When i make new tab auto set number of the tab like this.

I try to set counter i=0; and in addTab(page,"File-"+ i++); Doesn't work.

原文:stackoverflow.com/questions/14692433

您需要将整数转换为QString才能将其连接到QString。更好的是,您可以使用QString:: arg函数,并且可以非常轻松地获取可读且可能更快的代码:

tab_widget->addTab(page, QString("File-%1").arg(i++));

You need to covert integer to the QString to be able to concat it to the QString. Even better, you can use QString::arg function and get readable and potentially faster code very easily:

tab_widget->addTab(page, QString("File-%1").arg(i++));

Where i is field in your class initialized to 1.

PyQt4(QTabWidget)如何更改Tab页面的位置(PyQt4(QTabWidget) how to change position of a Tab Page)

好的,我发现了自己的问题。我把self.ui.tabWidget.tabCloseRequested.connect(self.onTabClose)放在与创建新标签的方法相同的方法中。这意味着如果创建了5个选项卡,那么当一个选项卡关闭时,tabCloseReqested会触发5次。通过将此连接语句放在我的类的init中,就像我应该做的那样,它只定义一次,并且仅在关闭选项卡时触发一次。 OK, I found the problem my self. I had put the self.u...

如何在QTabWidget标头中设置QWidget?(How to set QWidget in QTabWidget header?)

您必须使用setTabButton函数: void QTabBar:: setTabButton(int index,ButtonPosition position,QWidget* widget)在选项卡索引上设置小部件。小部件根据位置放置在左侧或右侧。隐藏任何先前设置的小部件。标签栏将取得窗口小部件的所有权,因此在销毁时,标签栏将删除此处设置的所有窗口小部件,除非您在设置其他窗口小部件(或0)后单独重新显示窗口小部件。该功能在Qt 4.5中引入。这与QTabWidget而与QT...

是否可以通过制表符号引用QTabWidget的单个选项卡?(Is it possible to reference individual tabs of a QTabWidget by tab number?)

如果您希望该选项卡具有特定索引,请使用widget(): QWidget* tab= tabWidget->widget( index); If you want the tab with a certain index, use widget(): QWidget* tab= tabWidget->widget( index);

如何在QTabWidget中为布局设置布局?(How can I set a layout to a tab in QTabWidget?)

它将始终位于左上角。您可以在自己的基础上添加另一个小部件,然后将小部件放在该小部件的中间,或者将小部件设置为选项卡的大小并将其内容放在中间。您可以使用QWidget的setLayout方法来设置窗口小部件布局。 Following@Satus idea, I create a new QFrame, set the minimum size as the size of myTabWidget, set a horizontal layout and add myCustomWidget i...

QT:逃离QTabWidget(QT: Escape from QTabWidget)

来自doc: void QWidget::setTabOrder( QWidget* first, QWidget* second) [static]将第二个窗口小部件放在焦点顺序中的第一个窗口小部件之后。请注意,由于第二个小部件的Tab键顺序已更改,您应该按如下顺序排序: setTabOrder(a, b);// a to b setTabOrder(b, c);// a to b to c setTabOrder(c, d);// a to b to c to d...

QTabWidget拒绝自动调整大小(QTabWidget refusing to auto-resize)

这是如何使Qt Widget随窗口大小增长而重复吗??我认为它是重复的,因为如果你的小部件树中的每个项目都有一个布局,我在Qt 4.7上的测试给出了以下输出,右边是我的对象检查器。我只是放入小部件并打好它们,我没有改变任何尺寸的东西来扩展,因为这绝对没必要!左边是正在运行的exe,右边是Creator截图。这是我的用户界面:<?xml version="1.0" encoding="UTF-8"?><ui version="4.0"><class>MainWindow</...

Qt QTabWidget-自动设置标签名称编号(Qt QTabWidget- auto set tab name number)

您需要将整数转换为QString才能将其连接到QString。更好的是,您可以使用QString:: arg函数,并且可以非常轻松地获取可读且可能更快的代码: tab_widget->addTab(page, QString("File-%1").arg(i++)); i的班级中的字段初始化为1。 You need to covert integer to the QString to be able to concat it to the QString. Even better, yo...

如何在Qt上从QTabWidget获取currentTabName?(How to get currentTabName from QTabWidget on Qt?)

正如Chris Kawa在这里回答的那样,这是当前小部件的对象名称。从代码我可以这样得到它: QString currentTabName= tabWidget->currentWidget()->objectName();注意:正如文档建议的那样,确保在使用tabWidget->currentWidget()时检查nullptr。 As Chris Kawa answered here this is the object name of the current widget. F...

如何在QTabWidget中只设置一个不能在Qt中移动的选项卡?(How to set only one tab in a QTabWidget as not moveable in Qt?)

看看QTabBar的源代码( QTabBar子元素),似乎这是不可能的。所有选项卡只有一个movable属性。但是,您可以尝试以下方法:子类QTabBar并在拖动开始之前捕获鼠标按下事件以启用或禁用选项卡的移动。像这样的东西: void MyTabBar::mousePressEvent(QMouseEvent*event){// all tabs movable except first setMovable(tabAt(event->pos())!= 0);...

样式化QTabWidget(Styling QTabWidget)

似乎焦点矩形由正在使用的QStyle(不要与样式表混淆)处理。您可以编写一个QStyle子类并将其应用于您的QTabWidget。子类应覆盖drawControl()方法,如果当前正在绘制焦点矩形,则不执行任何操作。子类看起来像这样: NoFocusRectStyle.h#ifndef NOFOCUSRECTSTYLE_H#define NOFOCUSRECTSTYLE_H#include<QWindowsVistaStyle>// or the QStyle subclas...

QTabWidget的Tab页签只能拖拽交换顺序,没有把Tab页拖入拖出的功能,我们可以通过继承QTabBar重新实现部分接口来实现这个功能。

首先是Tab页的拖出,主要通过QTabBar的鼠标事件来处理,如果拖出了QTabBar的区域就生成一个QDrag,用于显示Tab页的快照跟随鼠标。

当鼠标释放的时候,如果在QTabBar外部,则从QTabBar移除该页面,作为一个独立的窗口显示。

然后是Tab页的拖回,也是判断鼠标释放时的位置,如果在QTabBar范围,就添加到QTabBar中。

(1.目前这种方式效果不理想,太生硬了,没有浏览器Tab拖拽那种流畅的感觉,后期修改的话可能需要实时判断位置,而不是鼠标释放时才去处理;2.没有很好的利用Qt的drag drop事件接口,后期可以尝试下;3.QTabWidget很多默认的效果不大好,比如TabBar占据宽度居然是根据页签总宽而不是TabWidget占的宽度,这样判断区域也不方便,还有Tab页过多时的左右按钮也不好用,如果时间足够的话,最好重写)

wwW.Xtw.Com.cN系统网专业的PC、手机系统开发下载平台,HarmonyOS系统、安卓、OS、windows电脑重装系统在线下载安装,操作系统平台技术学习,攻略教程,技术交流。

免责声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。内容仅供参考使用,不准确地方联系删除处理!

联系邮箱:773537036@qq.com

标签: 编号 设置 自动