לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 25-10-2004, 01:08
צלמית המשתמש של hmemcpy
  hmemcpy hmemcpy אינו מחובר  
 
חבר מתאריך: 23.11.03
הודעות: 4,041
כתבה מבוא ל- Borland Delphi 7

מבוא ל- Borland Delphi 7 - חלק א'.



שלום לכולם. ברצוני לדבר היום על השפה שלא כולם מכירים – Delphi.

מהו Delphi?

Delphi מבית Borland היא שפת תכנות ויזואלית, המבוססת על פסקל. יותר נכון, Object Pascal – תכנות פסקל בעזרת Objects (כמו VB – בייסיק בעזרת Objects). נוחות הממשק, עזרה מובנית, debugger חכם ועוד, הופכים את Delphi לאחד מכלי ה- RAD הטובים ביותר בשוק.

הכירות עם הממשק.

תמונה 1:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

בואו נכיר את הממשק מעט:

תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה 1 - Component Palette (לוח רכיבים)

לוח רכיבים זהו המקום שכולל את כל הרכיבים הויזואליים, אותם ניתן לשים וליישם בתוך ה- Form. הם מחולקים בנוחות עפ"י נושאים, כגון Standard, Win32, Additional, Data Access ועוד הרבה.

תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה 2 – Object Inspector (מפקח האובייקטים)

Object Inspector הוא המקום שמשתמשים בו ב-90% מן הזמן בעת העיצוב של התוכנה. תפקידו בעיקר הוא לשנות את מאפייני הרכיבים (גודל, צורה, צבע, גופן, כיתוב וכו'), והוא גם Event Manager – אחראי לאירועי הרכיבים.

תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה 3 – Code Editor (עורך הקוד)

עורך הקוד הוא המקום שבו ניתן לכתוב את הקוד שלנו. הוא כולל השלמת קוד דינאמית חכמה (ניתן לקרוא לה עם המקשים Ctrl+Space), הדגשת קוד למילים שמורות, תהליכים, פונקציות וכד'.

תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה 4 – Form Editor (עורך ה- Form)

ה- Form הוא המקום שבו אנחנו שמים את הרכיבים שלנו, ומעצבים אותו בהתאם לצורה שבא אנו רואים את התוכנה שלנו. ניתן להוסיף רכיבים ע"י לחיצה כפולה על סמל הרכיב מתוך Component Palette, או לחיצה אחת על הסמל, ולחיצה נוספת בכל מקום על ה- Form.

תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה 5 – Object TreeView (עץ-מבנה אובייקטים)

מספק לנו את ההיררכיה שבא נוצרים הרכיבים. נוח מאוד לדעת לאיזו קבוצה שייך איזה רכיב (למשל, תיבת טקסט שנוצרה בתוך Groupbox בלתי ניתנת לגרירה מחוצה לו – אפשר לראות את זה בצורת עץ).


טוב, אחרי שהכרנו מעט את הממשק, הגיע הזמן לעשות אפליקציית Hello World פשוטה. נעשה את זה ב- 2 דרכים – תוכנה ויזואלית, ותוכנת Console.

Hello World #1 – שימוש ב- VCL.

VCL זהו ה- Visual Library של בורלנד ליצירת רכיבים, הדומה מאוד ל- MFC. ההבדל היחיד ביניהם, שבברירת מחדל, VCL מתהדר לתוך קובץ ה- EXE ואינו זקוק לשום DLL חיצוני להפעלה. יש בזה את היתרון ואת החיסרון – היתרון הוא שקובץ שניצור בעזרת VCL ירוץ על כל מערכת ההפעלה, ללא שום תלות ב- DLL חיצוני (אפילו ירוץ על לינוקס, אם במקום VCL נשתמש ב- CLX). החיסרון הוא – גודל הקובץ. פרויקט חדש ללא שורה של קוד שלנו ייקח (ב- Delphi 7) כ- 360 קילובייט.

תמונה 2:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

מתחילים! ניצור פרויקט חדש ע"י File -> New -> Application. אנחנו נקבל Form ריק. נעשה תוכנת Hello World אשר מציגה הודעה בעת לחיצה על כפתור.

בתוך Object Inspector נוכל לקבוע מספר מאפיינים לתוכנה החדשה שלנו. קודם כל, בשדה Caption נוכל לרשום שם לתוכנה שלנו, לדוגמא 'Hello World v1.0'. לאחר שנרשום, נראה שהכותרת של ה- Form שלנו השתנתה בהתאם. בנוסף, נבחר תחת Border Style את האופציה bsSingle. זה יגרום לתוכנה להיווצר ללא אפשרות שינוי גודל ע"י גרירה. בנוסף, נמחק את כפתורי Maximize ו- Minimize שאין לנו צורך בהם, ע"י קביעתם כ- False תחת Border Icons. בסוף, נשנה ל- Form את השם ל- frmMain בשדה Name.

מתוך Standard ב- Component Palette נבחר את האובייקט Button ונשים אותו על ה- Form שלנו. נקבע לו את השם (Name) בתור btnOk, וב- Caption נרשום OK במקום מה שרשום (Button1). נשנה קצת את גודל ה- Form כדי שלא יהיה גדול במיוחד. עכשיו הגיע הזמן לכתוב קוד.

נלחץ פעמיים על הכפתור החדש שלנו. זה ייקח אותנו ל- Event Handler החדש שנוצר עבורנו. עכשיו נוסיף את הקוד הבא:

קוד:
MessageDlg('Hello World!', mtInformation, [mbOk], 0);




נריץ את התוכנה שלנו בעזרת F9. אם לא עשינו טעות מקודם, אנחנו נקבל את התוצאה:

תמונה 3:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

שימו לב: הפקודה MessageDlg היא הפקודה של Delphi ליצירת הודעות. זהו לא ה- API של הפונקציה MessageBoxA. אם היינו רוצים להשתמש בא במקום המובנית ב- Delphi, הקוד שלנו היה אמור להיראות מעט שונה:

קוד:
MessageBoxA(0, 'Hello World!', 'My First App!', MB_OK + MB_ICONINFORMATION);







מאז גרסא 7 של Delphi ניתן להוסיף Manifest ויזואלי לתוך התוכנה. כמו שאנו רואים, התוכנה נוצרה בברירת מחדל ללא תמיכה ב- Themes של Windows XP. כדי להוסיף את התמיכה יש לשים על ה- Form את הרכיב XPManifest שנמצא ב- Win32 בתוך Component Palette שלנו. אין צורך יותר לעשות דבר – רק לשים את הרכיב, ולהדר שוב את התוכנה (F9) :

תמונה 4:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

כאן אנחנו רואים איך התוכנה נראית ב- Design Time (מצד שמאל), וב- Run Time עם ה- XP Manifest (צד ימין). רואים את ההבדל בין הדוגמא הראשונה?

הערה חשובה: אם אין ברשותכם Delphi 7, ניתן להוסיף את ה- Manifest ידנית. בשביל לעשות את זה, יש ליצור קובץ טקסט חדש בספריה שבא נמצא קובץ ה- EXE של התוכנה שלכם, ולרשום בו את הדבר הבא:

קוד:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="Your.Application.Name.Here" type="win32" /> <description>Your Description Here</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly>








יש לשמור את הקובץ כ- application.exe.manifest בספריה שבא נמצא הקובץ EXE. לדוגמא, אם לתוכנה שלכם קוראים HelloWorld.exe, קובץ ה- manifest צריך להיקרא HelloWorld.exe.manifest.

טיפ: כדי לגרום ל- Delphi לתמוך ב- Themes של XP, יש לשים קובץ manifest כזה בספריה של הקובץ .exe32Delphi (בברירת מחדל – C:\Program Files\Borland\Delphi 7\Bin) בצורה כזו:

קוד:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="Borland.Delphi.7.Enterprise" type="win32" /> <description>http://www.borland.com/delphi/</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly>








לשמור את הטקסט הנ"ל בשם delphi32.exe.manifest. התוצאה שנקבל היא:

לפני:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

אחרי:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

למרות ההוספה של תמיכה ויזואלית ל- Delphi עצמו, זה עדיין מחייב הוספת XPManifest לתוכנות שלנו, כדי שגם הן יתמכו ב- Themes של Windows XP.


Hello World #2 – אפליקציית Console

עכשיו נבנה אפליקציה דומה, אבל בתור Console. ככה זה יראה יותר כמו תכנות בפסקל. ניצור תוכנת Console חדשה ע"י File -> New -> Other -> Console Application.

מה שמאפיין תוכנת Console הוא ה- Compiler Directive בשם {APPTYPE CONSOLE$}. כל עוד אנחנו מעוניינים באפליקציית Console, עלינו להשאיר את ה- Directive הזה.

נמחק את הקוד ש- Delphi הכין עברינו, ונוסיף קוד משלנו. הקוד שלנו יראה ככה:


קוד:
program HelloWorld; {$APPTYPE CONSOLE} begin WriteLn('Hello World #2!'); WriteLn('Press enter to quit'); ReadLn; end.




ניתן לשלב Console API לתוכנה שלנו. כדי לעשות את זה, יש להוסיף uses Windows לקוד שלנו לפני begin. אם נרצה לדוגמה להחליף את צבע הטקסט, ולהוסיף כותרת, נשתמש בקוד הבא:


קוד:
program HelloWorld; {$APPTYPE CONSOLE} uses Windows; begin SetConsoleTextAttribute(GetStdHandle( STD_OUTPUT_HANDLE), FOREGROUND_RED OR BACKGROUND_GREEN); SetConsoleTitleA('Hello World Console App #2'); WriteLn('Hello World #2!'); WriteLn('Press [enter] to quit'); ReadLn; end.





והתוצאה שנקבל:
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

סיכום

לצערי, אין הרבה ביקוש ל- Delphi בישראל, וחבל. Delphi היא שפה חזקה כל כך, שיכולה לעשות כל משימה שיש לעשות. אני מקווה שהמאמר היה מובן, ואם יש שאלות כלשהן, אשמח לענות עליהן פה.

אגב, ניתן להוריד גרסת ניסיון ל- 60 יום של Delphi 7 מהאתר http://www.borland.com/products/downloads/download_delphi.html תיהנו!

נערך לאחרונה ע"י fat fish בתאריך 02-11-2004 בשעה 12:18.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 17:41

הדף נוצר ב 0.08 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר