Nie chciałem pisać drugiego tematu, napiszę tutaj.
Chyba nie ma nic gorszego niż kontrolka ComboBox [glowa]
Więc żeby było ze szczegółami, to mam tak:
W pliku zasobow:
COMBOBOX IDC_SIEC,62,20,150,13,CBS_DROPDOWNLIST | CBS_HASSTRINGS
W kodzie:
case WM_INITDIALOG:
SendMessage(GetDlgItem(hWnd, IDC_SIEC), CB_ADDSTRING, 0, (LPARAM)(LPCSTR)"Text 1");
SendMessage(GetDlgItem(hWnd, IDC_SIEC), CB_ADDSTRING, 0, (LPARAM)(LPCSTR)"Text 2")
cd. w kodzie:
char* cSiec = new char[128];
GetDlgItemText(hBox, IDC_SIEC, cSiec, 128); // ta funkcja dziala dobrze, zwraca to co jest wybrane
I sobie najnormalniej w sciecie chcę sprawdziś jaka pozycja została wybrana, i zależnie od wybranej chce przypisac odpowiednią wartość do zmiennej.
Tu nie chodzi o ta zmienną, tylko o sprawdzenie jaka pozycja została wybrana z ComboBox'a ! :|
//.... ale porownienie juz do dup*
if(cSiec == "Text 1")
MessageBox(0, "Text 1 OK", "Text 1 OK", MB_OK);
else if(cSiec == "Text 2")
MessageBox(0, "Text 2 OK", "Text 2 OK", MB_OK);
// (ten MessaBox to taki przykladowy tylko, tu bedzie int z odpowiednim przypisaniem)
Za choler** nie działa poprawni, pierwszy if zwraca drugi, a drugi nie zwraca nic itp. [glowa]
Próbowałem też strcmp / strcmpi - bez skutku !
Pomoże ktoś ? ;/
Dzięki Wielki z Góry.