मैंने अन्य समान प्रश्नों की जांच की और उनके समाधानों की कोशिश की लेकिन वे मेरे लिए काम नहीं करते हैं।क्यूटी 5 कनेक्ट करें "ऐसा कोई स्लॉट नहीं" त्रुटि
मैं मूल रूप से एक http क्लाइंट बनाने की कोशिश कर रहा हूं जो केवल पोस्ट अनुरोध करता है। ऐसा करने के लिए, मुझे कुछ कॉलबैक स्लॉट पर QNetworkManager
के समाप्त सिग्नल को कनेक्ट करने की आवश्यकता है।
मेरा कोड यहां है।
ज फ़ाइल:
...
public slots:
void finishedSlot(QNetworkReply* reply);
private:
QNetworkAccessManager *network_manager;
...
cpp फ़ाइल:
...
Class1::Class1(){
network_manager = new QNetworkAccessManager(this);
QObject::connect(network_manager, SIGNAL(finished(QNetworkReply *)), this, SLOT(finishedSlot(QNetworkReply *)));
}
...
void Class1::finishedSlot(QNetworkReply* reply)
{
// some logic with reply
}
...
आप देख सकते हैं, स्लॉट निश्चित रूप से मौजूद है और यह हेडर फाइल में सार्वजनिक स्लॉट्स के तहत घोषित किया जाता है। तो मुझे नहीं पता कि यह क्यों हो रहा है। मैंने पहले ही साफ, क्यूमेक चलाने और पुनर्निर्माण की कोशिश की है।
त्रुटि संदेश है "QObject :: कनेक्ट: ऐसी कोई स्लॉट QObject :: finishedSlot (QNetworkReply *)"
किसी भी विचार?
ध्यान दें कि त्रुटि कहती है ** QObject ** :: समाप्त स्लॉट। इसका मतलब है कि क्यूटी को आपके उप-वर्ग के बारे में पता नहीं है। इसका मतलब है कि इसके बारे में मेटा जानकारी उत्पन्न नहीं हुई थी। इसका मतलब है कि आपकी कक्षा में 'moc' नहीं चलाया गया था। इसका मतलब है कि आपकी कक्षा में 'Q_OBJECT' मैक्रो की कमी है। – peppe
आपको "स्लॉट्स:" क्षेत्र में अपना स्लॉट फ़ंक्शन (हेडर फ़ाइल में) निर्दिष्ट करना न भूलना चाहिए – peter70