שאלה ב MFC

  • פותח הנושא GLev
  • פורסם בתאריך

GLev

New member
שאלה ב MFC

שלום, ב MFC יש אפשרות להצמיד ל EDITBOX משתנה מסוג CONTROL ו VALUE, על ידי ה קלאס ויזארד, רציתי לשאול כאשר מחליטים שהמשתנה VALUE איך שולטים בתוכן ה EDITBOX בעזרתו, ושאלה נוספת, בעזרת משתנה מסוג CONTROL ל EDITBOX ניתן לשלוט על התצוגה של הEDITBOX להעלים אותו ולהראות אותו, האם אפשר בצורה דומה להעלים ולהראות את מה שכתוב לידו, STATIC . תודה.
 

אמיר ט

New member
כמה טיפים ל MFC

אני אישית תמיד משתמש באופציית ה Control ככה יש לי שליטה על כל הפקד, ולא רק התוכן. אם אתה משתמש ב VALUE, אז אתה צריך משהו בסגנון הקוד הבא :
UpdateData( TRUE ); //ככה אתה מעדכן את המשתנה שיכיל מה שיש בפקד m_someVar = "something..."; //לשנות את מה שכתוב... UpdateData( FALSE ); //ככה אתה מעדכן את הפקד עם הטקסט החדש​
GetDlgItem( IDC_BUTTON1 )->ShowWindow( SW_HIDE ); ועכשיו לגבי השאלה שניה, יש פונק' נחמדה מאד שנקראת GetDlgItem היא מקבלת את השם של הפקד ומחזירה לך את האובייקט שלו, וככה אתה יכול לשנות מה שאתה רוצה איפה שאתה רוצה מתי שאתה רוצה, הקוד של זה נראה ככה בערך : זה אחד הדברים שאפשר לעשות, בעיקרון אפשר לעשות ככה הכל.
 

cyberia2ooo

New member
רק לציין

שכשאתה עובד עם VALUE ואתה רוצה לעדכן מידע, פרוצדורה יותר יעילה היא במקום לעשות UpdateData(TRUE) m_someVar = something UpdateData(FALSE) (מה שכן הUpdateData הראשון הוא די מיותר, הרי זה סך הכל מחזיר ערכים, ואתה לא צריך את זה אם לא מעניין אותך מה הערך של הפקד) אתה יכול להשתמש בפונקצית DDX אחת שתשים את הערך שאתה רוצה, בפקד שאתה רוצה.
 
למעלה