Qt自定义小部件错误
Qt custom widget error
我正在尝试在Qt中制作简单的自定义小部件(名为DingButton,继承自QPushButton)。我做的,在Qt Designer上可以看到。但当我编译包含这个自定义小部件的项目(名为DingDemo)时,我得到了一个错误:
未定义对`DingButton::DingButton(QWidget*)的引用
它指向ui_DingDemo.h:中的下一个代码
class Ui_DingDemo
{
public:
DingButton *dingbutton;
void setupUi(QWidget *DingDemo)
{
if (DingDemo->objectName().isEmpty())
DingDemo->setObjectName(QString::fromUtf8("DingDemo"));
DingDemo->resize(226, 97);
dingbutton = new DingButton(DingDemo); //<---------error here
我在互联网上搜索了一下,并试图遵循下一条指令:
添加行:
LIBS+=-Wl,-rpath,/usr/local/qt4/plugins/designer-L/usr/local/qt4/plugins/designer-L libding-button-plugin.so
到.pro文件
- 创建.pri文件并将其包含到.pro中
但这并不成功。
为什么会发生这种情况?如何度过难关?
请帮我
丁-丁-丁-plugin.pro
CONFIG += plugin release designer
TEMPLATE = lib
TARGET = $$qtLibraryTarget($$TARGET)
target.path = $$[QT_INSTALL_PLUGINS]/designer
INSTALLS += target
INCLUDEPATH += .
LIBS += -Wl,-rpath,/usr/local/qt4/plugins/designer -L/usr/local/qt4/plugins/designer -l libding-button-plugin.so
HEADERS += DingButton.h DingButtonPlugin.h
SOURCES += DingButton.cpp DingButtonPlugin.cpp
编辑:DingButton::DingButton(QWidget*)实现
您必须实现这个构造函数,它在发生错误的行中被调用。
DingButton(QWidget *widget = 0);//In your DingButton class
DingButton::DingButton(QWidget *widget) : QWidget(widget) //In your .cpp
{
}
相关文章:
- C++在使用std::multimap时出现运行时错误的几率很小
- 多线程减慢程序速度:无错误共享,无互斥锁,无缓存未命中,无小工作量
- 错误C++在Visual Studio 2019中使用numeric_limits的长双精度最小值/最大值
- 寻找最小楼梯成本的动态规划问题的错误答案
- 我在c++中遇到了一个奇怪的错误,其中一个计算2个小整数加法的语句溢出到一个长值中
- 需要找到3个小错误-内存错误
- 如何修复错误:使用向量查找最小值和最大值进行合并排序
- 与unordered_map向量一起使用的最小示例中的scoped_allocator_adaptor错误
- 欧拉项目#8:C++错误的答案(为一个小的炮制输入给出正确的答案)
- 大型测试用例中C++ dfs 问题中的小错误
- 英里到千克转换器练习的小语法错误
- Qt小部件应用程序"Library not registered"错误
- 黑客排名最小最大值问题,最大总和给出错误的负值
- 为什么以下C++元编程代码在 N=100 时给出编译错误,但对于小 N 运行良好
- 为什么即使目标数组很小,strcpy 也不会抛出错误?
- C++缓冲区太小错误
- 最小的函数输入和输出错误
- 在VS2017中编译错误C2027,但没有小对象优化
- C++ 小错误:"... is not a static data member of ‘class ...'"
- C++ 创建小部件数组