qt如何在点击控件之后获取该控件的名称??

我在qt控件下点击,如何获取该控件的名称,需要做遍历吗?如何重写函数要怎么写?

0

3个回答

在槽函数里调用sender()获得控件指针,是QObject类型的。而后,试试objectName属性可否返回名称

0
qq_26470013
skyblue_2012 我槽函数里写的是QAction对象指针,不是控件对象,我这是要做一个右键菜单,需要获取当前点击的控件的名称
接近 3 年之前 回复

我槽函数里写的是QAction对象指针,不是控件对象,我这是要做一个右键菜单,需要获取当前点击的控件的名称

0

你在添加QAction的时候,就先setObjectName一下
然后在槽函数里用:

 qDebug() << QObject::sender()->objectName();

试试看

0
qq_26470013
skyblue_2012 回复小灸舞: 但是我现在要点击就获取这个objectName
接近 3 年之前 回复
qq_26470013
skyblue_2012 回复小灸舞: 这样是可以
接近 3 年之前 回复
qq423399099
小灸舞 回复skyblue_2012: 对的
接近 3 年之前 回复
qq_26470013
skyblue_2012 你意思是这样吗?
接近 3 年之前 回复
qq_26470013
skyblue_2012 QAction *pNew; pNew->setObjectName("lineEdit_dark");
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Qt5.9中根据控件ObjectName查找该控件(查找按钮控件对象Object::findChild())(按钮QPushbutton)
1.1已经知道一个QPushbutton的objectName,可以根据该objectName查找到对应的QPushbutton按钮对象。具体实现函数是: findChild(const QString &amp;amp;aName = QString(), Qt::FindChildOptions options = Qt::FindChildrenRecursively) const   1....
Qt中如何在点击控件时获取QTreeWidgetItem绑定控件所在的item
最近遇到了这个问题,用了挺长时间解决这个问题的。 主要是用将控件在qtreewidget的item中显示,使用。比如一个button,一个slider或者一个combobox等等。 但是对于有的控件,选中某个item后,如果直接点击另一个item上的控件,利用qtreewidget的currentitem获取到的还是光亮状态的item,此时如果获取鼠标点击的item的信息,会失败。 解决方法
QT5 获取点击的按钮
QT获取点击的按钮: QPushButton* btn= qobject_cast(sender());
模态对话框如何在DOModal() == IDOK之后获取该对话框的内容
1、获取编辑框内容,编辑框关联一个成员,在IDOK之后,直接dlg.该成员即可. 2、对于控件,DoModal之后,则无法再获取控件的相关内容,因为控件GDI此时已经销毁了
自学QT之传递控件指针判断是哪个控件被操作
假设你有一百个按钮,需要知道是哪一个按钮被单击了。 如果采用一百个槽函数,那可真是坑爹了。所以我们必须把他们都连接到同一个槽,这在QT中是可以的。 那么问题来了,我怎么判断是哪一个按钮被单击了呢? 很简单哦,有个sender()函数。 尝试搜索,网上的说法就一行代码: QPushButton *btn=qobject_cast(sender()); 然后就说可以了,简直是大坑啊,很多人还
Qt中通过代码设置控件的objectName,和通过objectName查找该控件
(1)在代码中,动态创建的一些控件,先通过setObjectName(“XXX”); 用QDesigner创建的界面,就已经设置了setObjectName (2)再通过findChild QLabel *macLabel = new QLabel(this); macLabel-&amp;gt;setObjectName(&quot;mac&quot;); //查找这个控件的时候 QLabel *macLabe...
QT中ui界面的控件QComboBox实现鼠标点击事件
故事发生在两天前,因为项目需要,在QT中的ui界面添加QComboBox控件,需求是实现控件的点击事件,查了资料,发现这个控件类的本身是没有点击信号可以使用的,提供的信号为 void activated(int index) void activated(const QString &amp;amp; text) void currentIndexChanged(int ind...
Qt UI设计器中根据字符串的名字,来找匹配的控件名称
QWidget* p=QPushButton::find(controlID.at(90)); /* 这个将QPushButton转换到基类QWidget了,丧失了QPushButton的独有方法 */          QPushButton *da=QMainWindow::centralWidget()->findChild("Btn_1");  /*centralWidget获取的是U
Android:适配器及适配器控件
什么是适配器? 下图展示了数据源、适配器、ListView等数据展示控件之间的关系。我们知道,数据源是各种各样的,而ListView所展示数据的格式则是有一定的要求的。数据适配器正是建立了数据源与ListView之间的适配关系,将数据源转换为ListView能够显示的数据格式,从而将数据的来源与数据的显示进行解耦,降低程序的耦合性。这也体现了Android的适配器模式的使用。对于ListView...
根据控件名称查找控件
FlowLayoutPanel flowLayoutPanel = (FlowLayoutPanel)this.tabControl1.Controls.Find("flowLayoutPanel1",true)[0];
QT判断界面当前点击的按钮和当前鼠标坐标
1.QObject::sender( ) 返回发送信号的对象的指针,返回类型为QObject* 。可使用qobject_cast动态类型转换成对应的发送信息的对象(对象类的基类中需要有QObject)。QObject::objectName( ) 返回对象的名称(QString)1 QPushButton*btn = qobject_cast<QPushButton*>(sender());//获取
Qt判断鼠标在控件上
if (widget-&amp;gt;geometry().contains(point)) {}QT判断鼠标是否在某子窗口控件上方需要注意的是,子窗口获取geometry,是相对于父窗口的相对位置,QCursor::pos()获取的是鼠标绝对位置,要不将父窗口的相对位置进行换算,要不将鼠标的绝对位置进行换算,这里本文采用将鼠标绝对位置换算到控件上,示例代码如下:if(ui-&amp;gt;groupBox-&amp;g...
Qt中如何获取某个控件的指针地址
Qt中如何获取某个控件的指针地址,我知道C语言可以轻松的获取指针地址,不知道在Qt中是否有好的方法来获去某个部件的指针信息。 求指教。
Qt 判断鼠标在某一控件上
需要注意的是,子窗口获取geometry,是相对于父窗口的相对位置,QCursor::pos()获取的是鼠标绝对位置,要不将父窗口的相对位置进行换算,要不将鼠标的绝对位置进行换算,这里本文采用将鼠标绝对位置换算到控件上,示例代码如下: if(m_btn_start-&amp;gt;geometry().contains(this-&amp;gt;mapFromGlobal(QCursor::pos()))) ...
QT,其他类中计算出的结果如何在ui界面的控件中显示?
QT,其他类中计算出的结果如何在ui界面的控件中显示?大体要求是这个样子的,我在一个类中执行了其他类中的一个函数,得到一串数据,那么我怎么将这串数据通过组合在mainwindow中用ui->这种方式将数据赋值给控件呢? 我在网上搜索了好多结果,今天整理一下,和大家分享,网上网友说到,ui->给控件赋值,只能在mainwindow这个类中操作,至于将ui->这个放到别的类中不建议,
如何在其他类里调用窗体里控件的属性或方法
  把窗体实例穿进去,然后把窗体中组件的modifers属性设置为public,这样就可以直接通过实例访问了 form1.textbox1.text
Qt在TabWidget(其他控件)内进行绘图操作
之前由于开发需要,对Qt的一些操作不是很熟悉,在网上查找如何在TabWidget内进行绘图操作的时候发现很多都说得不清不楚的,看起来实在是浪费我们这些新手的时间,希望通过这个博客帮助到其他人。 其实这个操作很简单,但是当初不清楚的我整整花了一天时间去查阅各种资料,后来才发现如此简单。 因为Qt的paintEven(QPaintEvent*)总是只在当前类下面的窗口绘图。那么要在子窗口下绘图的话...
如何获取非本activity绑定的布局控件
做的项目中有一个功能是在当前的Activity生成一个view,然后点击view上的button,跳转到另外一个Activity,中间碰到了一些问题,现在归纳总结一下: 1.如何正确获取另一个Xml布局文件中的控件? 一般我们都会用findViewById来获取,但是该方法只能获取setContentView(R.layout.main)中参数main.xml上的控件,如果想获取另外一
QT 如何在其他类中修改UI控件的属性?
QT新建Qt Widgets Application项目,需要修改ui控件属性,得在mainwindow这个类中进行修改,如,ui->myQLabel->setText("this is q1!")等等,那么怎么在分离出去的类中进行修改呢?下面是一种很好的方法。
Qt入门之常用qt控件认知之布局控件(QFormLayout,QBoxLayout,QGridLayout,QStackLayout)转帖比较好懂而且全面
上一个主题中我们讨论学习了Qt布局的概念及Qt基类QLayout的认识。为了更好的进行布局控制,Qt实现了常见的布局有QFormLayout,QBoxLayout,QGridLayout,QStackLayout,每个布局都有着各自的特点,在此逐个理解学习   1、QFormLayout:表单布局,顾名思义就是实现表单模式的布局。表单就是提示用户进行交互的一种模式,其主要有两个列组成,第一个列用于...
QT中使用QPainter在ui子控件中绘图
在使用QT中的QPainter绘制图片时发现其只能够在当前类中执行绘制操作。本文介绍一下怎么实现在ui的子控件中用QPainter实现绘图。以QLabel为例: 1.在QT工程中新建一个类PaintLabel,继承自QLabel。 //paintlabel.h文件#ifndef PAINTLABEL_H #define PAINTLABEL_H #include class PaintLa
设置子控件获得父控件的点击事件
欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
Qt creator 如何从.Ui文件中获取控件?类似findViewBy功能的实现
creator 从.Ui文件中获取控件资源
Qt 在控件上面绘图 label,pushbutton。。。。。
最近有点时间,就研究研究Qt ,提升一下自己 我记得我在刚开始学习Qt 的时候,想要在一个控件上面绘制图形,那就要构建一个新类来调用该控件的绘图函数 今天看到了狗哥的学习博客,感觉自己好渺小啊,按照狗哥的步骤,一步一步来练习,写了一个demo Qt 之所以不能在在任意控件上面绘图,是因为Qt的事件过滤器把控件的绘图事件给过滤了,自己知识不够,盗用狗哥的话 “在事件过
QT 使用QSignalMapper 遍历控件传递每个控件名
QSignalMapper *pmap = new QSignalMapper(); QList&amp;lt;QPushButton*&amp;gt;allLabel = ui-&amp;gt;widget_p-&amp;gt;findChildren&amp;lt;QPushButton*&amp;gt;(); for(int i =0;i&amp;lt;allLabel.size();i++){ c...
Qt之控件双击重命名操作
备用。控件双击之后控件被重命名的edit覆盖,完成重命名。
Qt在控件未显示时如何获取正确的控件尺寸
因为打算全屏显示一个对话框,而对话框内有几个QLabel的尺寸要在确定QLabel可用的最大尺寸后,再根据内容调整一次,所以在对话框构造函数内就想确定QLabel的最大尺寸,但因为QWidget::updateGeometry()和QWidget::update()都只能用于可见的控件,所以如何在控件不可见时(构造函数内)就可以确定控件布局的最终效果呢? //widget为需要强制刷
Qt QWidget获取子控件的方法小结
父类QWidget或取其子类控件并赋值:两个方法可用:1.根据名称返回控件对象:QLabel* label = ui-&amp;gt;Stepwidget-&amp;gt;findChild&amp;lt;QLabel*&amp;gt;(&quot;label_step1&quot;); //根据子控件的名称查找子控件 label-&amp;gt;setText(&quot;jianjian&quot;);2.直接返回所有子控件的列表QList&amp;lt;QLabel*&amp;g...
PyQt5根据控件Id获取控件对象
self.findChild(QComboBox, &quot;name&quot;) self is classfirst parameter is Typesecond parameter is Id String
QT实现控件不响应鼠标点击事件
QT中很多控件都有鼠标点击的事件响应,比如QPushButton,QRadioButton。有时候我们想要实现的是:当鼠标点击控件时,不会产生响应事件。其中的一种方法是使用Qt::WA_TransparentForMouseEvents。 官方对Qt::WA_TransparentForMouseEvents的说明为 When enabled, this attribute disables ...
Qt 一个点击事件和改变按钮文字的demo
在假面文件中添加设计师界面类,可以点击文件 新建文件或项目,或者使用快捷键ctrl+N进行添加 然后点开布局,添加一个按钮。 #ifndef MAINWINDOW_H#define MAINWINDOW_H #include namespace Ui { class MainWindow; } class MainWindow : public QM
qt在任意控件上画图
http://blog.csdn.net/z609932088/article/details/50952086
(sender as PictureBox).Name,判断鼠标进到了哪个pb里,获得控件名
非常感谢死心.net,语文报和嗿戀袮dё奇 说明:在一个控件里有16个pictureBox,我想判断鼠标在哪个pictureBox上,可以用(sender as PictureBox)来获得,这16个pictureBox都要有统一的事件,然后在这个事件里写上     MessageBox.Show((sender as PictureBox).Name); 这样就获得了鼠标所在的pb上的name ...
获取控件名称和内容.rar
获取控件名称和内容.rar 获取控件名称和内容.rar 获取控件名称和内容.rar
QT中如何关联结构体中的各个变量
QT中如何关联结构体中的各个变量 日常查询一个结构体里面的变量,一般都是直接拿着结构体往控件填写相应的参数即可,但是实际应用中涉及到查询等操作时,需要根据某个名称获取其他的信息比如,它的相关说明等等。 思路:ID和Name 这两变量本身没有任何关联,需要用一种关联容器实现二者关联。即QMap 本文关键字:QListView; QStringList; QMap; 信号和槽 mainwindow....
QT中对QTreeView控件节点进行重命名操作
今天总结一下对QTreeView节点重命名的操作 在QtreeView中有一个void eidt(const QModelIndex &index)的槽函数,当你想要对某个节点进行重命名操作时,将索引传给该槽函数,该节点状态就能变成可编辑。 另外如果不是通过右键菜单进行重命名操作,通过双击也能实现相应操作,只需要通过setEditTriggers(EditTriggers triggers)函
QT查找同类控件并进行批量处理
平时我们用UI设计了很多控件,例如,一个页面上有很多qpushbotton,都要设置成阴影效果,如果一个一个去设置就会有很多代码,所以可以用如下一种方法去设置,让代码更简洁 QListQPushButton *> Btns = ui->widget->findChildrenQPushButton *>(); foreach (QPushButton * btn, Btns) {
获取QTableWidget中setCellWidget中控件所在的行列信息
在button的slot函数中,从sender得到button指针,根据这个button的位置(x,y),由tablewidget->itemAt(x,y)可得到modelindex,其中itemAt不受scroll影响. 用这个方法的好处是,从modelindex开始,能完全操作tablewidget.     int x = obj->frameGeometry().x();//o
Qt 5.9解决界面修改控件名称不生效的问题
Qt 5.9解决界面修改控件名称不生效的问题 一、版本说明: Qt Creator 4.4.1 Based on Qt5.9.3 (MSVC 2015, 32bit) 二、问题描述: 如图,我在界面将Label控件名称从“shiduLb”更改为“aqiLb”,然后去代码里,“ui->aqi”并没有弹出“aqiLb”,一个一个往下找,也并没有找到“aqiLb”这一项,“Ctr
跟随鼠标获取窗口,控件名称
function GetWndText(hWnd: HWND): String; {返回控件名称} Var Ret:LongInt; mText:PChar; Buf:Integer; begin Ret:=SendMessage(hWnd,WM_GETTEXTLENGTH,0,0)+1; GetMem(mText,Ret); try Buf:=LongInt(mText); ...
文章热词 设计制作学习 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 python控件开发教程 ios控件开发教程