เทคนิคการสร้าง MessageBox ใน Visual C++ แบบกําหนด format จัดทำโดย : langjuko พิมพ์

เทคนิคการสร้าง MessageBox ใน Visual C++ แบบกําหนด format ได้

เทคนิคนี้ ได้มาจากเว็บไซต์ต่างประเทศครับ ในบางครั้งเราต้องการแสดงค่าที่อยู่ในตัวแปรแบบ int , float หรือ char * ออกมา ซึ่งจะต้องใช้การ Debug เมื่อเวลารันโปรแกรม แต่วิธีการนี้ จะช่วยให้สามารถแสดงค่าออกมาได้โดยใช้การกําหนด format string

วิธีการก่อนหน้านั้น ใน Visual C++ จะใช้แบบนี้ครับ เวลาจะแสดงข้อมูลในตัวแปรออกมา โดยไม่ทําการ Debug

char buffer[256];
sprintf( buffer , "time = %d , value = %d ", time , value );
AfxMessageBox( buffer );

ก็ลําบากพอสมควร ก็เลยหาเทคนิคจาก codeguru.com มาใช้คือ MessageBox แบบกําหนด format ได้ครับ ดังนี้

int MsgBox(UINT nType, PSTR sz,...)
{
char ach[512];
va_list args;
va_start(args, sz);
wvsprintf (ach, sz, args);
int retval = AfxMessageBox (ach, nType == 0 ? MB_OK|MB_ICONEXCLAMATION : nType);
return retval;
}

เวลาเรียกใช้ก็แบบนี้ครับ

MsgBox( "time = %d , value = %d ", time , value );

กําหนด format ในตัวเลยครับ... เทคนิคลักษณะนี้ก็นําไปใช้ในการดีบักโปรแกรมง่าย ๆ โดยไม่ต้องเข้าสู่โหมด Debug ครับผม

คุณอาจสนใจ
ลบเมนูบูตตัวเลือกโอเอสทิ้ง ทำไงนะ
เว็บไทยดีดี (16,438 - 29 ก.ย. 50)
การสร้างโลโก้ Central
เว็บไทยดีดี (43,793 - 20 ต.ค. 50)
การใส่ข้อความให้โดยอัตโนมัติ
นายนุก (19,436 - 14 ก.พ. 51)
เทคนิคการหาค่าความยาวของตัวอักษร
Mr.GuruZ (26,923 - 03 มิ.ย. 49)
เล่นโปรแกรม Winamp แล้วเสียงกระตุกแก้อย่างไร
เว็บไทยดีดี (17,131 - 29 ก.ย. 50)
การพิมพ์ตัวอักษรวิ่งรอบวงกลม
Webmaster siamicy.com (61,394 - 27 มิ.ย. 49)
5 วิธีถนอมธัมบ์ไดร์ฟสุดรัก
เว็บไทยดีดี (20,172 - 28 ก.ค. 50)
แชร์เอกสารปลอดภัยสุดๆ ใน Vista ด้วย XPS
เว็บไทยดีดี (14,723 - 22 ก.ย. 50)