# Native Code > برنامه نویسی با C > برنامه نویسی GTK، GTK+‎ و wxWidget >  آموزش پایه GTK+

## ayub_coder

سلام
این فروم خیلی سوتو کوره؟
کسی نیست یه آموزش کوچولو از GTK رو شروع کنه؟ با C?
توی ویندوز هم باشه بهتره؟ اساتیدی که تجربه کاری حتی خیلی کم هم دارن
دست به دست هم بدین؟ از نصب و راه اندازی اولیه GTK روی ویندوز شروع کنید - Hello World انشاله باهم جلو میریم.؟  :قلب:

----------


## soorena

سلام من می‌خواستم این کار رو بکنم ولی‌ خوب متاسفانه ظاهراً +gtk زیاد کاربردی تو ایران نداره و خوب فکر می‌کنم علت هم این هستش که لینوکس زیاد کاربردی تو ایران نداره.

ضمن اینکه تو واستطهای گرافیکی که من تا به حل کار کردم +gtk می‌تونم بگم از همشون ضعیف تر بوده و پیش Qt و wxWidget حرفی‌ برای گفتن نداره به هر حال میشه این بحث رو شروع کرد ولی‌ من نظرم اینه که حداقل از WxWidget شروع کنیم چون native هستش و محیط‌های کار اون هم راحت تر هستش.

----------


## ayub_coder

من هم امروز یه مقدار(4 ساعت) GTK+ کار کردم. بعد از کلی کلنجار رفتن با CodeBlock و GTK+ و 23900000000 بار ارور بالاخره اجرا گرفتم. ولی جایی تو نت خوندم برعکس همین حرف شما نوشته بودن . گفته بودن که wxwidget زیر مجموعه ای از GTK هست و در مقابل GTK حرفی برای گفتن نداره  :متفکر:  . بالاخر اساتیدی مثل شما بهتر میتونن نظر بدن.!!! حالا کدوم رو شروع کنیم؟

----------


## soorena

سلام

تو اینکه +gtk خیلی‌ خوب هستش و البته قدرتمند حرفی‌ نیست ولی‌ خوب یک سری مشکلاتی‌ داره که کار با اون رو خیلی‌ سخت کرده.تا جایی‌ که من میدونم اولین و مهمترین مشکل +gtk اینه که native نیست .خوب این باعث می‌شه در مقابل محیط ویندوز از لحاظ گرافیکی خیلی‌ ضعیف تر باشه.به هر حال برای +gtk به اندازه کافی‌ منبع تو اینترنت هست که نیازی به آموزش دادن نباشه ولی‌ اگه wxWidget رو بخوایم کار کنیم من می‌تونم اینجا شروع کنم.

----------


## ayub_coder

پس بسم ا...
شروع کن  :تشویق: 
البته از 0   :افسرده:

----------


## amir92

نظر من این هست که gtk فوق العاده قدرت منده و برای ویندوز هم کارایی خیلی خوبی داره به ویژه بعد از اینکه نگارش 2.24 را برای ویندوز دادند اما برای بحث قیافه آن در ویندوز لازم به ذکر است که gtk یک کتابخانه رویه دهی شدیدا وابسته به theme است برای همین اگر شما بدون هیچ گونه تمی یک gtkwindow رو اجرا کنید مسلما با یک پنجره بی ریخت و زشت مواجه میشید چه در لینوکس و چه در ویندوز فرقی نداره در لینوکس اگر محیط gnome و یا xfce و به طور کلی میزکارهای مبتنی بر gtk به طور خودکار این تنظیمات اعمال میشود(منظورم تنظیمات مربوط به تم است) اگر میز کار کیوت باشه نمی دونم چون تا حالا از kde استفاده نکردم 
در مورد تم دهی برای ویندوز به محض این که وقت کردم آموزش لازم را می گذارم

----------


## ayub_coder

مرسی دوست عزیز حتما اینکارو بکن

----------


## knight-rak

سلام
دوستان منم کلی مطلب خوندم و آخرش به نتیجه ی اولم رسیدم که GTK از باقی خیلی بهتره ، در کل هم بنده به شخصه از GTK خیلی بیشتر خوشم میاد من فقط جی تی کی رو گفتم و با باقی فریمورک ها کاری نداشتم پس به Qt کارا بر نخوره 

دوستان عزیز هم اگر زحمت بکشن و آموزش های GTK+ رو از ۰ همین جا شروع کنن خیلی عالی میشه حالا بد و خوب رو اصلا دیگه مورد مقایسه قرار ندین چون هم خوب هست و هم بد ولی یک سری خوب رو انتخاب میکنن و یک سری هم بد رو هر کسی هر کمکی میتونه بکنه که حداقل اینجا از سوتوکوری در بیاد و یکم منابع آموزشیش بیشتر بشه 

موفق باشید /./.

----------


## ســمــیــه

سلام !
من هم خیلی دوست دارم GTK+ رو یاد بگیرم امیدوارم این تاپیک به جایی برسه و آموزشش رو شروع کنید ....
البته همونطور که دوستان گفتن از صفر ...

----------


## aminghaderi

سلام خدمت همه دوستان.



> تا جایی‌ که من میدونم اولین و مهمترین مشکل +gtk اینه که native نیست


می شه لطف کنید یک رفرنس برای این جملتون بیان کنید .



> نظر من این هست که gtk فوق العاده قدرت منده و برای ویندوز هم کارایی خیلی  خوبی داره به ویژه بعد از اینکه نگارش 2.24 را برای ویندوز دادند اما برای  بحث قیافه آن در ویندوز لازم به ذکر است که gtk یک کتابخانه رویه دهی شدیدا  وابسته به theme است برای همین اگر شما بدون هیچ گونه تمی یک gtkwindow رو  اجرا کنید مسلما با یک پنجره بی ریخت و زشت مواجه میشید چه در لینوکس و چه  در ویندوز فرقی نداره


ولی من در اینجا خوندم برای ویندوز دیگه کارایی نداره ؟! نه الان بلکه خیلی وقت هست. (از ویندوز xp به بعد ظاهرا)



> *Which Windows versions?*
> 
>  The current GTK+ stack uses APIs that are available only on Windows  2000 or later. Long obsolete versions of GTK+ did run on Win9x and NT 4,  too.







> کسی نیست یه آموزش کوچولو از GTK رو شروع کنه؟ با C?
> توی ویندوز هم باشه بهتره؟ اساتیدی که تجربه کاری حتی خیلی کم هم دارن
> دست به دست هم بدین؟ از نصب و راه اندازی اولیه GTK روی ویندوز شروع کنید - Hello World انشاله باهم جلو میریم.؟


اینجا جامع توضیح داده ، البته مفید و مختصر . برخلاف تصور دوستمان که می فرمایند پنجره های تولیدی ظاهر بدی داره در اینجا می بینیم که از پنجره های Windows OS زیباتر جلوه می کنه البته نه Win7 ؟!
در پایان من فکر می کنم این بستر منسوخ شده و کاربردی حداقل برای سیستم عامل Windows خصوصا ورژن های جدید نداره که در بالا اشاره کردم.
ولی من QT رو هم دیدم و بررسی کردم به نظرم یک سر و گردن بالاتر باشه همین این که Cross Platform هست و هم اینکه کد ها استاندارد تری تولید می کنه و هم اینکه قابلیت Native هم داره البته من در جایی نیستم که بخوام نظری بدم چون در این زمینه تازه کار هستم.

دوستان اگر جمله کسی رو نقل قول گرفتم قصد جسارت نداشتم و فقط برای بررسی جنبه علمی موضوع و یاد گیری متقابل بوده است.
با تشکر.

----------


## amir92

> ولی من در اینجا خوندم برای ویندوز دیگه کارایی نداره ؟! نه الان بلکه خیلی وقت هست. (از ویندوز xp به بعد ظاهرا)
> *Which Windows versions?*
> 
>  The current GTK+ stack uses APIs that are available only on Windows   2000 or later. Long obsolete versions of GTK+ did run on Win9x and NT 4,   too.


بیا این نوشته رو ترجمه کنیم:
کدام نگارش ویندوز؟(منظورش این هست که gtk با کدام نگارش ویندوز کار میکند)
شاخه جاری gtk از توابعی استفاده میکند که در ویندوز 2000 به بعد موجود است. نگارش های منسوخ (میشه این طوری هم گفت که عهد عتیق :لبخند گشاده!: ) gtk در Win9x and NT 4 کار میکرد.

به عبارت دیگر برنامه هایی که با gtk در ویندوز نوشته میشوند روی ویندوز 2000 به بالا کار میکنند.




> اینجا  جامع توضیح داده ، البته مفید و مختصر . برخلاف تصور دوستمان که می  فرمایند پنجره های تولیدی ظاهر بدی داره در اینجا می بینیم که از پنجره های  Windows OS زیباتر جلوه می کنه البته نه Win7 ؟!


دوست عزیز نمونه پنجره های این آموزش که شما نشانی دادید  پوسته استاندارد گنوم 2 است و من هم گفتم که:



> در لینوکس اگر محیط gnome و یا xfce و به طور کلی میزکارهای مبتنی بر gtk  به طور خودکار این تنظیمات اعمال میشود(منظورم تنظیمات مربوط به تم است)


دوستان گفتند که:



> تا جایی‌ که من میدونم اولین و مهمترین مشکل +gtk اینه که native نیست


میشه لطف کنید منظورتون رو از native واضح کنید gtk که توی ویندوز xorg نمیخواد نصب کنی تا بالا بیاد :متفکر:  :تشویق:   :لبخند گشاده!: که میگید native نیست زیر لایه اش توی ویندوز win32 api است حتی شما میتونی win32 handle یک gtkwindow رو با توابع gdkwin32 از اون استخراج کنید. اگر منظورتون چیز دیگه ای است بگید تا ما هم متوجه بشیم.




> در پایان من فکر می کنم این بستر منسوخ شده و کاربردی حداقل برای سیستم  عامل Windows خصوصا ورژن های جدید نداره که در بالا اشاره کردم.


به هیچ وجه این طوری نیست. بیچاره توسعه دهنده ها بعد از دو سال تغییراتی که در نگارش 2.18 به بعد داده بودند رو در 2.24 چهار پنج ماه پیش برای ویندوز پایدار کردند. اون وقت شما میگید منسوخ است.

پینوشت: من تا حدود یک ماه آینده به دلیل مشغله کاری احتمالا فکر نمکنم اینجا سر بزنم پس اگر پاسخ ندادم حمل بر بی توجهی یا بی ادبی نشه. انشاا.. بعدا هم در مورد باقی موارد توضیح بیشتر و کامل تری میدم. هم آموزش تم دادن رو که قولش رو دادم میگذارم و اگر موردی بود بیشتر دربارش تبادل نظر میکنیم

----------


## aminghaderi

ممنون اقا امیر استفاده کردم ، بله من هم فهمیدم که چقدر بروی این ابزار کار کردند ولی خوب به دید اول چنین چیزی متوجه شدم ، ولی هنوز هم مردد هستم بروی ویندوز 7 بشه اجراش کرد (هم ابزار و همه برنامه ای که تولید می کنیم).
اگر برای شما امکان داشت و وقتش را هم داشتید و باعث مزاحمت نمی شد ، لطفا یک برنامه کوچک در حد یک TextBox و یک دکمه که با زدنش کلمه "سلام" رو نمایش دهد که در ویندوز 7 تولید و اجرا شده باشد رو بگذارید هم خیلی ممنون می شوم و هم صواب داره و هم اینکه حد اقل یک نفر رو کامل به سمت +GTK هدایت کردید.

با تشکر فراوان

----------


## soorena

سلام خوب من مثل اینکه یک مقداری جملم رو بد بیان کردم دوستان جبهه گرفتن. منظور من از نتیو بودن اصلا این نبود که زیر لایش چی‌ هست که خوب همه می‌دونن چیه. نکته اصلی‌ این هستش که پر واضح هستش که gtk در محیط ویندوز به هیچ عنوان کارایی API ویندوز رو نداره که خوب مسلم هستش و این در مورد تمام پلتفرم‌ها صدق می‌کنه.در هر پلتفرم استفاده از توابع نتیو در اون بهتر از استفاده از رپر یا هر چیزی مثل اون هستش.(اگر فکر میکنی‌ اینجوری نیست من یک واسط گرافیکی با API ویندوز میسازم شما اگه فکر میکنی‌ هستش مثل همون رو با gtk بساز کدش رو بذار.). نکتهٔ مهم دیگه اینه که (مخصوصاً برای دوستانی که تازه میخوان شروع کنن چون من هم همهٔ این راه رو رفتم)اگر تو فکر‌ این هستین که یک بار بنویسین و توی همهٔ پلتفرم‌ها از اون استفاده کنین و همون کیفیت رو هم در مقایسه با استفاده مستقیم از توابعی API ویندوز داشته باشید سخت در اشتباهید چون همچین اتفاقی‌ نمیوفته. نکته دوم اینکه همین Gtk که دوستمون سنگش رو به سینه می‌زنه یه نسخه جدید حدود ۲ ماه پیش داده بیرون...من با این هنو کار نکردم (چون پروژه نبود که مجبور شم کار کنم) ولی‌ از تو نسخه قبلیش برای ویندوز حداقل می‌تونم ۱۰ تا باگ اینجا برات بگم که داشته (که البته فکر می‌کنم تو نسخه جدید بر طرف شده چون قبلان گزارش شده بود.). نکته سوم اینکه تو واسطهای چند محیطی‌ (کراس‌پلتفرم)Qt صد در صد حرف اول رو می‌زنه و هیچ شکی‌ نیست (حوصله ندارم مقایسه کنم خودتون برید بخونید.).فقط یه مشکله اساسی‌ داره که اونم لیسانسش هستش که البته تو ایران قابل حال هستش(یعنی‌ اصلا مشکل نیست.). صحبت بعدی اینکه Gtk تو وین۷ هیچ مشکلی‌ نداره و اجرا می‌شه. یه نصیحت هم به دوستانی که میخوان تازه شروع کنن اینکه اگر لینوکس کار نیستید و نیاز ندارید اصلا دنبال Gtk هم نرید وقت تلف کردنه.اگر قراره تو ویندوز فقط برنامه نویسی کنید بهتره که از API استفاده کنید.
سال نو مبارک.

----------


## aminghaderi

با تشکر از شما *soorena* .



> فقط یه مشکله اساسی‌ داره که اونم لیسانسش هستش که البته تو ایران قابل حال  هستش(یعنی‌ اصلا مشکل نیست.). صحبت بعدی اینکه Gtk تو وین۷ هیچ مشکلی‌  نداره و اجرا می‌شه. یه نصیحت هم به دوستانی که میخوان تازه شروع کنن اینکه  اگر لینوکس کار نیستید و نیاز ندارید اصلا دنبال Gtk هم نرید وقت تلف  کردنه.اگر قراره تو ویندوز فقط برنامه نویسی کنید بهتره که از API استفاده  کنید.


می شه درباره لیسانش یکم توضیح بدید؟ مثلا آیا برای ایران تحریمه ؟و هزینه خرید یک لایسنس چقدر هست؟ و همچنین با خرید یک لایسنس کلا صاحب یه نسخه از qt می شویم ؟
و سوال بعدی اگر ممکنه کمی درباره توابع Api توضیح بدید ، که مثلا چطور می شود از اونا استفاده کرد و لیست توابع موجود سیستم عامل ها را  رو باید از کجا بدست بیاریم ؟

من الان شدیدا نیاز به یه بستر CrossPlatform برای نوشتن یه نرم افزارتحت شبکه با زبان ++c دارم ، و باید اون رو بروی 3 سیستم عامل Linux ، windows، mac به طور درست و کامل بدون نقص اجرا کنم و کد ها هم باید Native باشه من بعد کلی تحقیق به qt رسیدم ، اما هنوز کسی پیدا نشده بگه این کار رو حد اقل در ابعاد کوچک انجام داده و به نتیجه رسیده تا من هم بدون ترس از هزینه ها شروع به کار کنم ؟! 
کامپایلر مورد نظرم هم GCC هست و سیستم عامل کاری (سیستم عاملی که برنامه بروی آن نوشته و ترجمه می شود هم Windows 7 هست)
لطفا در صورت داشتن تجربه چنین کاری راهنمایی بفرمایند ، که چه مشکلاتی بر سر راه هست و باید از کجا شروع کنم.

با تشکر

----------


## حامد مصافی

> می شه درباره لیسانش یکم توضیح بدید؟


کیوت قبلا در دو نسخه تجاری و اوپن سورس عرضه می‌شد. با نسخه اوپن‌سورس فقط اجازه دارید نرم‌افزار‌های متن‌باز بنویسید اما در نسخه‌لایسنس تجاری اجازه ارائه نکردن کدها را دارید که البته مستلزم پرداخت هزینه است (فروش لایسنس تجاری در حال حاضر به digia واگذار شده است) اما بعد از خرید کیوت توسط نوکیا لایسنس lgpl هم به لایسنس‌های اون اضافه شد و برنامه‌نویسان از نسخه ۴ به بعد اجازه نوشتن نرم‌افزار‌های کدبسته با نسخه رایگان کیوت رو دارند و تنها مزیت نسخه تجاری پشتیبانی اونه. پس این موضوع هم حل شدست.



> من الان شدیدا نیاز به یه بستر CrossPlatform برای نوشتن یه نرم افزارتحت  شبکه با زبان ++c دارم ، و باید اون رو بروی 3 سیستم عامل Linux ، windows،  mac به طور درست و کامل بدون نقص اجرا کنم و کد ها هم باید Native باشه من  بعد کلی تحقیق به qt رسیدم ، اما هنوز کسی پیدا نشده بگه این کار رو حد  اقل در ابعاد کوچک انجام داده و به نتیجه رسیده تا من هم بدون ترس از هزینه  ها شروع به کار کنم ؟!


من این کار رو حداقل در ابهاد کوچک انجام دادم!!! به بیانی دیکر Qt دقیقاً چیزیه که نیاز داری. می‌تونیم در بخش مربوطه ادامه این بحث رو پی‌گیری کنیم.

----------


## aminghaderi

با تشکر از شما جناب مصافی که همیشه به بنده و سایر دوستان لطف داشتید و با بزرگواری تجربه خودتون رو در اختیار قرار دادید.
خیالم رو از بابت انتخابم راحت کردید ، بروی چشم ادامه سوالاتم رو در باره qt در بخش خودش مطرح می کنم که انسجام بخش ها از بین نرود.

----------


## ravand

ببخشید میشه به من بگید کدهای gtk در C++‎ این شکلیه ؟
#include <gtk/gtk.h>
int main( int   argc,
          char *argv[] )
{
    GtkWidget *window; 
    gtk_init (&argc, &argv);
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    gtk_widget_show  (window);
    gtk_main ();
    return(0);
}
یا این شکلی؟
#include <gtkmm.h>
int main(int argc, char *argv[])
{
Gtk::Main kit(argc, argv);
Gtk::Window window;
Gtk::Main::run(window);
return 0;
}
متشکرم.

----------


## javidabbaci

دوستان من هم خیلی دوست داشتم با یک فریم ورک که به اصطلاح کراس پلتفرم باشه کار کنم .... مثلا GTK  .. بعد کدبلاک را برای IDE انتخاب کردم ... ولی نمی دونم چرا وقتی کد را اجرا می کنم یک تروجان با اون اجرا می شه و مانع اجرای پروژه میشه در ضمن من  از بیتدفندر استفاده می کردم و لایسنسش را هم خریده بودم ... اورجینال بود .....
هرچی ویروس یابی می کردم همچنان این مشکل باقی بود ..... و الان هم هست .... ولی وقتی با   QT  کار می کنم همچین مشکلی وجود نداره ...
هرچی گشتم برای ویندوز یه ویرایشگر دیگه بدرد بخور پیدا نکردم و همچنین یه آموزش مناسب ..........
در حالی که کیوت همه چیز را دم دست برای شما آماده کرده  و کلی آموزش داخل خودش .... خلاصه این gtk  محبوب و قدرت مند از نظر آموزش و امکانات نسبت به فرمورک های دیگه خیلی ضعیف هست ... اگه همین وقت هایی را که صرف سرچ در مورد GTK  کردم صرف  جاوا ، سی شارپ ، کیوت و غیره کرده بودم کلی پیشرفت کرده بودم .....
حالا اگه می خواستم یه ویرایشگر دیگه را هم انتخاب کنم باز هم اوضاع همینجور بود ....مثلا ایکلیپس... اون هم یه آموزش آسان برای راه اندازی gtk  که من پیدا نکردم و نتونستم اجرا بگیرم .... در حالی که در کمتر از چند دقیقه کیوت را نصب و اولین برنامه گرافیکی را  اجرا کردم .....  یا مثلا همینطور نت بینز و جاوا ..... یا سی شارپ و ویژوال استودیو   و غیره ....
خلاصه کلوم .... از نظر آموزشی  gtk    خیلی ضعیف و  ویرایشگر های اون هم به مراتب خیلی ضعیفتر از بقیه فریم ورک ها مثل سوییم جاوا و..... هست
گرچند من منکر قدرت GTK نیستم و به نظر من کاملا Native هست و برای همین  من جذبش شدم ولی برای انتخاب یک فریم ورک نمیشه فقط یک زاویه را مد نظر داشت ....
 شاید توی سایت آمازون منابع خوبی براش وجود داشته باشه که ما نه دسترسی به اون داریم .... ونه می تونیم دانلود کنیم .....
حالا اگه دوستان می خواند که  GTK کار کنند یه ویرایشکر خوب مثل ایکلیپس را انتخاب کنند و اول روش تنظیمات و راه اندازی اون را برای علاقه مندان قراربدهند ..... و پس از اون آموزش کتابخانه ها را شروع می کنیم ......  زبان سی را دوست دارم چون مادر تمام زبان هاست ... سی یعنی قدرت و سرعت بی پایان ........ 
خوب کی بلده ایکلیپس را با GTK  راه اندازی کنه ......و  ممنون می شم راهنمایی کنه ... !!!

----------


## IamOverlord

> ببخشید میشه به من بگید کدهای gtk در C++‎‎‎‎ این شکلیه ؟
> #include <gtk/gtk.h>
> int main( int   argc,
>           char *argv[] )
> {
>     GtkWidget *window; 
>     gtk_init (&argc, &argv);
>     window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
>     gtk_widget_show  (window);
> ...


سلام دوست عزیز!
کد های بالایی کد های GTK هستن که هم در زبان C قابل استفاده است و هم در زبان ++C...
اما کدهای پایینی کدهای GTKmm هست برای ‌++C... که GTKmm یه Wrapper برای GTK هست که این قابلیت رو به شما می ده که از ویژگی های زبان ++C استفاده کنید و کد شی گرا بنویسید برای استفاده از GTK...

----------


## ravand

> سلام دوست عزیز!
> کد های بالایی کد های GTK هستن که هم در زبان C قابل استفاده است و هم در زبان ++C...
> اما کدهای پایینی کدهای GTKmm هست برای ‌++C... که GTKmm یه Wrapper برای GTK هست که این قابلیت رو به شما می ده که از ویژگی های زبان ++C استفاده کنید و کد شی گرا بنویسید برای استفاده از GTK...


خب شما خیلی دیر جواب منو دادی این سوال مال یه سال پیشه  :لبخند گشاده!: 
ولی خوب اشکالی نداره همین که جواب دادی خودش خیلیه!
من GTK رو تونستم توی ویندوز اجرا کنم ولی GTKMM رو نتونستم توی وبندوز اجرا کنم. شما آموزشی برای اجرای gtkmm توی ویندوز داری؟
البته من یه pdf پیدا کردم که انگلیسی بود و یاد داده بود که من توی یه جاهاییش گیر کردم.

----------


## IamOverlord

سلام!
راستش خودمم موندم توش!
فعلا ترجیح می دم تو لینوکس از همون GTK استفاده کنم و کنارش کد ++C بزنم... هر وقت هم برای Windows خواستم خروجی بگیرم تو همین لینوکس Cross-Compile می کنم... اگه شما هم چیز خوبی پیدا کردید ممنون می شم ما رو هم مطلع کنید... ممنون!

----------


## javidabbaci

دوستان GTK  برای لینوکس عالی هست و  هم مشکلاتش در اون محیط برطرف شده و هم امکانات خوبی در اون محیط براش فراهم هست ...
ول من فکر می کنم که دوستان بهتره که QT را انتخاب کنند چون به هر دو زبان سی و سی پلاس می تونند در محیطش برنامه نویسی کنند و فکر می کنم که حتما در زبان سی هم میشه از کتابخانه های کیوت استفاده کرد (ولی هنوز مطمئن نشدم) . برای همه بلاتفرم ها هم که توزیع ارائه کرده . خلاصه کلام دوستان وقت  ما خیلی بیشتر از این ارزشمند هست که بخواهیم اون را در محیط های ضعیف و نامطمئن صرف کنم . من انتخاب خودم را انجام دادم  QT.
من اگه بخوام برای لینوکس هم برنامه نویسی کنم  فکر می کنم با احتمال  0.9999999  همین کیوت مشکل من را حل خواهد کرد و نیازی به GTK نخواهم داشت . مصداق اون هم این همه برنامه هست که با کیوت برای لینوکس نوشتند !! 
این را گفتم تا هموطنان عزیزم راه درست تر و بهتر را انتخاب کنند . و انشا الله گامی در تعالی ایران عزیز برداریم . 
البته به نظرات دوستان هم به دیده احترام نگاه می کنم .
پایدار باشید و سربلند  :لبخند:

----------

