logo

GUI של C++

GUI ראשי תיבות של Graphical User Interface. אלה הם חלק חיוני בפיתוח תוכנה מודרני. ממשקי משתמש גרפיים מאפשרים למפתחים ליצור יישומים שמשתמשים יכולים ליצור איתם אינטראקציה בקלות. C++ היא שפת תכנות רבת עוצמה הנמצאת בשימוש נרחב בפיתוח מערכות תוכנה מורכבות. במאמר זה, נחקור כיצד לבנות ממשקי GUI ב-C++ באמצעות ספריות ומסגרות שונות.

מה זה GUI?

ממשק משתמש גרפי, או GUI, מאפשר למשתמשים ליצור אינטראקציה עם מחשב באמצעות אלמנטים ויזואליים כגון לחצנים, תפריטים ותיבות דו-שיח. ממשקי GUI מספקים ממשק קל לשימוש ואינטואיטיבי המאפשר למשתמשים לבצע משימות במהירות וביעילות. הם נמצאים בשימוש נרחב ביישומים כגון דפדפני אינטרנט, נגני מדיה וחבילות משרדיות.

למה C++ לפיתוח GUI?

C++ היא שפת תכנות חזקה. בעזרת C++ נוכל לפתח מערכות תוכנה מורכבות, כולל GUIs. כמה מהסיבות לכך ש-C++ היא בחירה פופולרית לפיתוח GUI כוללות:

    ביצועים:C++ היא שפה בעלת ביצועים גבוהים שיכולה להפעיל קוד במהירות וביעילות. זה אידיאלי לפיתוח GUI.תמיכה בין פלטפורמות:ניתן להרכיב C++ עבור מערכות הפעלה מרובות. זוהי בחירה מצוינת לבניית יישומי GUI חוצי פלטפורמות.מגוון רחב של ספריות ומסגרות:ל-C++ יש מגוון עצום של ספריות ומסגרות זמינות לפיתוח GUI. זה נותן למפתחים הרבה אפשרויות כשמדובר בבניית האפליקציות שלהם.

ספריות ומסגרות לפיתוח GUI של C++

יש כל כך הרבה ספריות ומסגרות זמינות לפיתוח C++ GUI. בואו נסתכל על כמה מהאפשרויות הפופולריות ביותר.

1. Qt

Qt הוא ערכת הכלים הפופולרית ביותר של קוד-פתוח GUI. הוא נמצא בשימוש נרחב לפיתוח יישומי GUI חוצי פלטפורמות. הוא מספק סט מקיף של כלים וספריות לבניית יישומי GUI מודרניים, כולל תמיכה בקלט מבוסס מגע ומחוות, גרפיקה מתקדמת ומולטימדיה.

סט כתבי כתיבה

תוכנית 1:

 #include #include int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); char myoutput [60]; int stringlength, x=4, y=10; stringlength = sprintf(myoutput, '%d plus %d equals %d', x, y, x+y); printf ('[%s] is a string that is %d characters long.
', myoutput, stringlength); return a.exec(); } 

תְפוּקָה:

GUI של C++

הֶסבֵּר

מעבר בהזמנה מראש

תוכנית C++ זו משתמשת בפונקציה sprintf כדי לעצב מחרוזת ובפונקציה printf כדי להדפיס את המחרוזת המעוצבת לקונסולה. הוא מכריז על כמה משתנים, מקצה להם ערכים, מעצב מחרוזת ומוציא אותה לקונסולה.

2. wxWidgets

wxWidgets הוא ערכת כלים פופולרית נוספת של GUI חוצה פלטפורמות. הוא מספק קבוצה של כלים וספריות לבניית יישומי GUI מודרניים. הוא תומך במגוון רחב של פלטפורמות, כולל Windows, Linux ו-macOS.

תוכנית 2:

 #include 'wx/wx.h' #include 'wx/wxprec.h' #include 'hello.h'IMPLEMENT_APP(HelloWorldApp)bool HelloWorldApp::OnInit() { wxFrame *frame = new wxFrame((wxFrame*) NULL, -1, _T('Hello wxWidgets World')); frame->CreateStatusBar(); frame->SetStatusText(_T('Hello World')); frame->Show(true); SetTopWindow(frame); return true; } 

תְפוּקָה:

GUI של C++

הֶסבֵּר

זהו קוד wxWidgets בסיסי שיוצר חלון עם שורת מצב ומציג את הטקסט 'Hello World'. מחלקת HelloWorldApp מוגדרת ליישם את האפליקציה. הפונקציה OnInit() מאתחלת את היישום ויוצרת מסגרת חדשה עם הכותרת שצוינה. הפונקציה CreateStatusBar() יוצרת שורת מצב בתחתית החלון, ו-SetStatusText() מגדירה את הטקסט להצגה בשורת המצב. לבסוף, הפונקציה Show() מציגה את החלון, ו-SetTopWindow() מגדירה את המסגרת כחלון ברמה העליונה.

3. FLTK

זה קיצור של Fast Light Toolkit. זהו ערכת כלים GUI חוצה פלטפורמות. הוא מספק סט קל משקל ומהיר של כלים וספריות לבניית יישומי GUI. זוהי בחירה פופולרית לבניית יישומים הדורשים טביעת רגל קטנה או בעלי דרישות ביצועים קפדניות.

desc table ב-mysql

תוכנית 3:

 #include #include #include using namespace fltk; int main(int argc, char **argv) { Window *window = new Window(300, 180); window->begin(); Widget *box = new Widget(20, 40, 260, 100, 'Hello, World!'); box->box(UP_BOX); box->labelfont(HELVETICA_BOLD_ITALIC); box->labelsize(36); box->labeltype(SHADOW_LABEL); window->end(); window->show(argc, argv); return run(); } 

תְפוּקָה:

GUI של C++

הֶסבֵּר

קוד זה משתמש בספריית fltk כדי ליצור חלון עם ווידג'ט תיבת שכותרתו 'שלום, עולם!'. לקופסה גופן נטוי מודגש, בגודל 36 ותווית צל. לחלון יש גודל של 300 x 180 פיקסלים והוא מוצג על המסך באמצעות הפונקציה show() . הפונקציה run() מפעילה את לולאת האירוע הראשי לטיפול בקלט משתמש ומשאירה את החלון גלוי עד שהמשתמש סוגר אותו.

4. SDL

זה קיצור של Simple DirectMedia Layer. זוהי ספריית מולטימדיה חוצת פלטפורמות. הוא מספק סט של כלים וספריות לבניית משחקים ויישומי מולטימדיה. הוא כולל שמע, וידאו, התקני קלט ותמיכה ברשת, מה שהופך אותו לאפשרות רב-תכליתית לבניית יישומי GUI עשירים במולטימדיה.

תוכנית 4:

תכונות חומצה ב-dbms
 #include #include #include int main(int argc, char *argv[]) { // returns zero on success else non-zero if (SDL_Init(SDL_INIT_EVERYTHING) != 0) { printf('error initializing SDL: %s
', SDL_GetError()); } SDL_Window* win = SDL_CreateWindow('GAME', SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, 1000, 1000, 0); while (1) ; return 0; } 

תְפוּקָה:

GUI של C++

הֶסבֵּר

זוהי תוכנית SDL בסיסית הכתובה בשפת C. הוא מאתחל את ספריית SDL באמצעות SDL_Init(), יוצר חלון באמצעות SDL_CreateWindow(), ונכנס ללולאה אינסופית באמצעות while(1). הלולאה לא עושה כלום ורק מחכה שהמשתמש יסגור את החלון או יצא מהתוכנית. אם יש שגיאה כלשהי באתחול SDL, הודעת שגיאה מודפסת באמצעות הפונקציה printf() . התוכנית מחזירה 0 על הצלחה.

סיכום

C++ מספקת שפת תכנות חזקה ויעילה לפיתוח יישומי GUI. יש לו מגוון רחב של ספריות ומסגרות. למפתחים יש הרבה אפשרויות בכל הנוגע לבניית האפליקציות שלהם. בין אם המפתח בוחר ב-Qt, wxWidgets, FLTK או SDL, הם יכולים ליצור יישומי GUI עשירים ומודרניים הפועלים על פלטפורמות שונות.