سؤال

كلما كنت تستخدم إشارة/فتحة مربع الحوار محرر يجب أن تختار من القائمة الحالية من فتحات.لذا فإن السؤال هو كيف يمكنني إنشاء مخصص اسمه فتحة ؟

هل كانت مفيدة؟

المحلول

للأسف لم يكن هذا ممكنا في QT4.

في Qt3 يمكنك إنشاء فتحات مخصصة التي فأين تنفيذها في ملف ui.h. ومع ذلك، QT4 لا تستخدم هذا الملف بحيث لا يتم اعتماد فتحات مخصصة.

وهناك بعض مناقشة هذه المسألة على أكثر من QtForum

نصائح أخرى

وانقر على الحق في النافذة الرئيسية وحدد "إشارات التغيير وفتحات" وإضافة فتحة جديدة. وسوف تظهر في محرر فتحة الإشارة.

وأنا قادرة على القيام بذلك عن طريق:

في MainWindow.h، أضف السطر:

public slots:
     void example();

وفي فئة MainWindow.

في MainWindow.cpp

void MainWindow::example() {
     <code>
}

وليس من الممكن أن تفعل ذلك، لأنه يعني أنك ستضيف فتحة لفئة كيو تي القائمة مثل QPushButton التي ليست في الحقيقة وسيلة للذهاب.

ويجب إنشاء QWidget الخاصة بك في نهاية المطاف إن شاء subclasses ترث واحدة موجودة. ثم إدماجه مصمم كيو تي باعتباره المساعد على النحو المقترح. وجود فئة الخاصة بك يسمح لك بإضافة / modifiy الإشارات / فتحات المتاحة على النحو الذي تريد.

ولا ننسى فتحة ميزات لصناعة السيارات في الاتصال. وهناك عدد قليل من العيوب، مثل الحاجة إلى إعادة تسمية وظيفة الخاص بك إذا قمت بإعادة تسمية عنصر واجهة المستخدم، ولكن نستخدم هذه كثيرا في الشركة التي أعمل بها.

يمكنك استخدام السحر فتحة شكل

void on_objectName_signal() {
// slot code here, where objectname is the Qt Designer object name
// and the signal is the emission
}

الاتصال أن هذا الأسلوب هو الأسلوب connectSlotsByName و كلما الإشارة المنبعثة ، هذه الفتحة يتم استدعاء.

وربما سوف تساعد.

وافتراضيا لديك لاختيار من القائمة الموجودة من فتحات. ولكن يمكنك إضافة فتحة بالنقر بزر الماوس الأيمن على اعتراضك في القائمة في الجانب الأيمن من مصمم واختر "فتحة / الإشارات" وإضافة الخاصة بك فتحة مخصصة / إشارة. بعد ذلك، يمكنك اختيار ذلك في إشارة / فتحة المحرر.

وانقر على الأداة التي كتبها الزر الأيمن

وتعزيز القطعة إلى فئة قمت بتعريفه

وانقر على الأداة التي كتبها الزر الأيمن مرة أخرى

وسترى أن إشارة وفتحة هو للتحرير

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top