QT下自定义的控件无法生效问题处理

本文讲述了开发者在Qt中创建自定义videoWidget控件时遇到的问题,涉及构造函数未执行及UI配置问题。通过调试和修复,作者揭示了图形化编辑器可能存在的不一致性,并提供了实例化代码的关键修复,最终成功显示视频控件。
摘要由CSDN通过智能技术生成

问题描述:

QT下显示电脑摄像头,需要自定义一个Qwidget的控件,取名叫videoWidget:

1.自定义控件类的定义代码如下:

class videoWidget :public QWidget
{
    Q_OBJECT
public:
    explicit videoWidget(QWidget *parent = nullptr);

在Ui文件进行相应的控件提升:

 在运行代码时,控件效果始终无法出现

 


原因分析:

先在自定义类videoWidget中的构造函数中下断点。


经过调试,代码是进入不了这里的,自定义控件的构造函数都进入不了,说明控件自定义创建过程中失败。

整个项目检查,与videoWidget相关的配置都是正常的。

<layout class="QHBoxLayout" name="horizontalLayout" stretch="0">
     <item>
      <widget class="videoWidget" name="widget" native="true"/>
     </item>
</layout>

.....

<customwidgets>
  <customwidget>
   <class>videoWidget</class>
   <extends>QWidget</extends>
   <header>videowidget.h</header>
   <container>1</container>
  </customwidget>
</customwidgets>

解决方案:

经过分析查找,问题应该是出现在控件的实例化的时候,就查找自定义控件实例化的代码,在ui_mainwindow.h中发现了相关的信息。

立马补上

      


最后运行代码,自定义的视频控件,正常的显示出来了

 

总结:这里说明qt的图型化编辑器并不是能确保UI中编辑的内容能完全到位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值