से कनेक्ट करने का प्रयास करता हूं तो मैं Qt के लिए नया हूं। मैं वास्तव में एक सरल कैलकुलेटर कार्यक्रम को लागू करने की कोशिश कर रहा हूं। बस एक बटन डालने की कोशिश कर रहा है, और जब इसे क्लिक किया गया, तो मैं इसे "हैलो, वर्ल्ड!" प्रिंट करना चाहता हूं। अगली पंक्ति में संपादित करें। यह ठीक काम कर रहा है जब मेरे पास केवल एक बटन है, लेकिन जब मैं दूसरा जोड़ता हूं, तो यह संकलित नहीं होता है। और चूंकि मैं एक कैलकुलेटर कोडिंग कर रहा हूं, मुझे उन बटनों की आवश्यकता होगी।क्यूटी कोड संकलित नहीं होता है जब मैं एक सिग्नल को एक स्लॉट
C:\Users\user\Desktop\Calc\build-Calc-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\moc_mainwindow.o:-1: In function `ZN10MainWindow18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv':
C:\Users\user\Desktop\Calc\build-Calc-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:75: error: undefined reference to `MainWindow::on_pushButton_clicked()'
C:\Users\user\Desktop\Calc\build-Calc-Desktop_Qt_5_3_0_MinGW_32bit-Debug\debug\moc_mainwindow.cpp:76: error: undefined reference to `MainWindow::on_pushButton_2_clicked()'
यहाँ
MainWindow
विधि है:
void MainWindow::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MainWindow *_t = static_cast<MainWindow *>(_o);
switch (_id) {
case 0: _t->on_pushButton_clicked(); break;
case 1: _t->on_pushButton_2_clicked(); break;
case 2: _t->on_pushButton_11_clicked(); break;
default: ;
}
}
Q_UNUSED(_a);
}
और यहाँ कैसे मैं कनेक्शन बनाने है:
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
// this is the problematic part
void MainWindow::on_pushButton_11_clicked()
{
ui->lineEdit->setText("Hello, World!");
}
किसी को भी पता है कि यह कैसे तय करने के लिए
यहाँ त्रुटियाँ हैं ? आपके समय के लिए शुक्रिया।
आह, धन्यवाद! मैंने सोचा कि जब मैं एक पुराना कनेक्शन हटाता हूं तो क्यूटी निर्माता भी कोड से हटा देता है। जाहिर है यह नहीं है। –
@ AtakanArıkan: हाँ, अगर आपको उनकी आवश्यकता नहीं है, तो शीर्षलेख में उनकी घोषणा हटाएं, और moc फ़ाइल को पुन: उत्पन्न करें। – lpapp