PDA

View Full Version : سوال: در مورد ارث بری از QMainWindow و استفاده از menuBar



Aghaeifar
چهارشنبه 15 آذر 1391, 15:51 عصر
سلام.
یه سوال مبتدی داشتم.

من توی یه تابع سازنده از کلاسی که ساختم (کلاس از QMainWindow ارث برده) خواستم منو بذارم با این خط مثلا:

QMenu *file_menu = menuBar()->addMenu("File");

اما هر بار خطا می داد که

use of undefined type 'QMenuBar'
اومدم در فایل cpp کلاسم هدر زیر رو اضافه کردم و درست شد

#include <QMenuBar>

در واقع سوالم اینه، مگه menuBar جز کلاس QMainWindow نیست؟ پس چرا نیاز شده که من QMenuBar رو به فایل اضافه کنم؟ انتظار داشتم به ارث برسه در کلاس دلخواهی که من ساختم


من به تازگی با ارث بری آشنا شدم، شاید قسمتی رو اشتباه متوجه شده باشم.

خیلی ممنون

alamate_aoal
پنج شنبه 16 آذر 1391, 04:01 صبح
سلام

پیش تعریف (Prototype) یک تابع تعداد و نوع پارامترها , ترتیب فراخوانی , نام و نوع برگشتی یک تابع رو مشخص میکنه. کامپایلر به این اطلاعات جهت بررسی درست فراخوانده شدن یک تابع نیاز داره.
متد menuBar از کلاس QMainWindow اشاره گر از نوع QMenuBar بر میگردونه. در حقیقت با Include کردن QMenuBar اطلاعات مورد نیاز کامپایلر رو فراهم میکنی.