Yazar |
|
humam
Kayıt: 16.04.2007 |
|
Messagbox dan hangi tuşa basıldığını kontul etmek istiyorum. evet ya da iptal kısmına basıldığını nasıl kontrul ederim.. ben ornekte yapmaya callıştım ama tanımıyor..
if (MessageBox::Show(" ","",MessageBoxButtons::OKCancel),
MessageBoxIcon::Question) == DialogResult::OK)
c++ 2008 de yazıyorum kabul etmiyor. dialogresult:: diyince sadece get ve set çıkıyor...
bilen varsa yardım ederse sevinirim..
HAYAT BU!!!
|
|
Yazar |
|
audtou
malatya
Kayıt: 31.08.2006 |
|
MessageBox() fonksiyonu geri donus degeri olarak integer gönderir.Bu geri dönüş degeri de hangi tuşa basılarak MessageBox'un kapatıldıgını gösterir.Geri dönüş degerleri şunlar olabilir:
IDABORT, IDCANCEL, IDIGNORE, IDNO, IDYES, IDOK, IDRETRY
kodu şöyle yazarsan:
int i = MessageBox ( NULL, szFileName, "baslik", MB_YESNOCANCEL | MB_ICONASTERISK ) ;
if ( i == IDYES)
......
else if( i == IDCANCEL)
........
gereken kontrolleri yapabilirsin
bitiyo lan!
|
|
Yazar |
|
yasmin
istanbul
Kayıt: 14.03.2006 |
|
arkadaşlar
hani iki tane menu varya dosya ve yardım. bu yardım menusune basildiginda olusan submenu de hangisinin seçildiğini nasıl anlıcam ben soyle bişey denedim
case ID_STUFF_GO : dan sonra iki tane dialogbox oluşturdum. ve bu dialogbox ın herbirinin MAKEINTRESOURCE kısmına IDD_OGRENCI ve IDD_AD yazdım ve resource.h da define yaptım. bunları yardım menusunun hangi kısmının seçildiğini bulmak icin kullanmaya calıştım ama olmadı
bunları nasıl kullanıcam yardim edebilirmisinz
|
|
Yazar |
|
aliprinter
İstanbul
Kayıt: 12.02.2006 |
|
yasmin yazdi | ... yardim edebilirmisinz |
Çalışmayan kod parçasını ya da hata varsa hatayı yazarsan problem daha iyi anlaşılabilir. Örnek olarak WndProc CALLBACK fonksiyonu içinden hangi menüye tıklandığı parametresini aşağıdaki gibi yakalayabilirsin. Anlattığına göre yaptığın şeyler doğru ama muhtemelen karşılaştırma yaparken wParam yerine Message ile karşılaştırdın.
switch(Message)
{
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_STUFF_GO:
{
int ret = DialogBox(GetModuleHandle(NULL),
MAKEINTRESOURCE(IDD_OGRENCI), hwnd, OgrenciDialogProc);
...
...
break;
}
}
break;
}
OgrenciDialogProc için yine bir CALLBACK oluşturmalısın.
|
|
Yazar |
|
iemre
Anadolu
Kayıt: 26.05.2007 |
|
yasmin yazdi | arkadaşlar
hani iki tane menu varya dosya ve yardım. bu yardım menusune basildiginda olusan submenu de hangisinin seçildiğini nasıl anlıcam ben soyle bişey denedim
case ID_STUFF_GO : dan sonra iki tane dialogbox oluşturdum. ve bu dialogbox ın herbirinin MAKEINTRESOURCE kısmına IDD_OGRENCI ve IDD_AD yazdım ve resource.h da define yaptım. bunları yardım menusunun hangi kısmının seçildiğini bulmak icin kullanmaya calıştım ama olmadı
bunları nasıl kullanıcam yardim edebilirmisinz |
Ben böyle yaptım çalışıyor.
LRESULT CALLBACK WndProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam)
{
switch(Message)
{
case WM_COMMAND:
switch(LOWORD(wParam))
{
case ID_FILE_EXIT:
PostMessage(hwnd, WM_CLOSE, 0, 0);
break;
case ID_HELP_ABOUT:
{
int ret = DialogBox(GetModuleHandle(NULL),
MAKEINTRESOURCE(IDD_ABOUT), hwnd, AboutDlgProc);
if(ret == IDOK){
MessageBox(hwnd, "Öğrenci Numarası Diyaloğundan Tamam Tuşuna Basarak Çıktınız.", "Bilgilendirme",
MB_OK | MB_ICONINFORMATION);
}
else if(ret == IDCANCEL){
MessageBox(hwnd, "Öğrenci Numarası Diyaloğundan İptal Tuşuna Basarak Çıktınız.", "Bilgilendirme",
MB_OK | MB_ICONINFORMATION);
}
else if(ret == -1){
MessageBox(hwnd, "Hata!", "Hata",
MB_OK | MB_ICONINFORMATION);
}
}
break;
case ID_HELP_AD:
{
int ret = DialogBox(GetModuleHandle(NULL),
MAKEINTRESOURCE(IDD_AD), hwnd, AboutDlgProc);
if(ret == IDOK){
MessageBox(hwnd, "Ad Soyad Diyaloğundan Tamam Tuşuna Basarak Çıktınız.", "Bilgilendirme",
MB_OK | MB_ICONINFORMATION);
}
else if(ret == IDCANCEL){
MessageBox(hwnd, "Ad Soyad Diyaloğundan İptal Tuşuna Basarak Çıktınız.", "Bilgilendirme",
MB_OK | MB_ICONINFORMATION);
}
else if(ret == -1){
MessageBox(hwnd, "Hata!", "Hata",
MB_OK | MB_ICONINFORMATION);
}
}
break;
}
break;
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, Message, wParam, lParam);
}
return 0;
}
More than one
|
|
Yazar |
|
humam
Kayıt: 16.04.2007 |
|
audtou yazdi | MessageBox() fonksiyonu geri donus degeri olarak integer gönderir.Bu geri dönüş degeri de hangi tuşa basılarak MessageBox'un kapatıldıgını gösterir.Geri dönüş degerleri şunlar olabilir:
IDABORT, IDCANCEL, IDIGNORE, IDNO, IDYES, IDOK, IDRETRY
kodu şöyle yazarsan:
int i = MessageBox ( NULL, szFileName, "baslik", MB_YESNOCANCEL | MB_ICONASTERISK ) ;
if ( i == IDYES)
......
else if( i == IDCANCEL)
........
gereken kontrolleri yapabilirsin |
sağ ol ama bu kısım visual c++ 2008 için geçerli değil ki.
HAYAT BU!!!
|
|
Yazar |
|
yasmin
istanbul
Kayıt: 14.03.2006 |
|
aliprinter yazdi |
OgrenciDialogProc için yine bir CALLBACK oluşturmalısın. |
hatamı anladım olusturdugum submenu de iki ksımada ID_STUFF_GO yazmısım ve bu yüzden cagıramadim
teşekkür ederim arkadaşlar
|
|
|
|
-
Del.icio.us
-
Digg
-
Facebook
-
Furl
-
Google
-
Blink
-
Simpy
-
Spurl
-
Y! MyWeb
|
|
| | | |