|
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 06.12.2003, 12:19 Titel: [WINAPI][COMBOBOX] Merhere Eingaben |
|
|
Wie adde ich mehrere dinge in so einer IDC_COMBO1 ComboBox ?
mit SetDlgItemText() packt er immer nur bei mehreren Dingen das
letze rein _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
me Junior JLI'ler
Anmeldedatum: 10.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 07.12.2003, 12:57 Titel: |
|
|
hi!
also du solltest wenn du items zu deiner combobox adden willst die funktion SendDlgItemMessage benutzen;
guck dir des mal in der MSDN an; mit dem parameter CB_ADDSTRING erstellst du einen neuen Eintrag in deiner combo-box. mit CB_SETITEMDATA kannst du dann auch noch x-beliebige daten mit dem eintrag assoziieren.
hoffentlich hilft dir das. _________________ If something is stupid and it works, it ain't stupid! |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 08.12.2003, 15:36 Titel: |
|
|
irgendwie krieg ich es nicht hin, könntest du ein beispiel geben ? _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
me Junior JLI'ler
Anmeldedatum: 10.09.2003 Beiträge: 60
Medaillen: Keine
|
Verfasst am: 09.12.2003, 14:07 Titel: |
|
|
Na klar! Freu mich doch wenn ich zur Abwechslung mal anderen helfen kann
Also du hast da eine Combobox mit einer ID in deiner resource.h datei, die nennen wir IDC_COMBOBOX. Diese Combobox ist Element eines Fensters, z.B. eines Dialogs, den werde ich im Folgendem immer mit HWND meinFenster bezeichnen.
Jetzt wollen wir einen Eintrag zur Combobox hinzufügen, das machen wir auf die folgende Art und Weise:
Code: |
HWND meinFenster;
SendDlgItemMessage(meinFenster,IDC_COMBOBOX,CB_ADDSTRING,0,(LPARAM)"DEIN TEXT STEHT HIER!");
|
Nun hast du einen Eintrag in deiner Combobox; Dem Eintrag wird automatisch eine ID zugewiesen, die davon abhängig ist an welcher Position in der Liste er steht, und mit dem ersten Element bei 0 zu zählen beginnt. Die Positionen deiner Einträge sind abhängig davon ob du für deine Combobox den Style CBS_SORT gesetzt hast, dann werden sie nämlich alphabetisch sortiert, sonst nicht.
Willst du jetzt einem Eintrag auch noch bestimmte Daten zuweisen, so kannst du das auf folgende Weise machen:
Code: |
HWND meinFenster;
int itemID;
SendDlgItemMessage(meinFenster,IDC_COMBOBOX,CB_SETITEMDATA, itemID,(LPARAM)"DEINE DATEN IN IRGENDEINER FORM");
|
Wie du schon siehst, läuft es immer auf das gleich hinaus, nämlich SendDlgItemMessage(). Du musst nun nur wissen welche Messages du alle verschicken kannst, und was sie tun.
Hier noch eine kleine Auswahl:
CB_SETCURSEL: lieftert die das aktuell ausgewählte element der combobox zurück
LB_ADDSTRING: gleiches wie CB_ADDSTRING nur für listbox
etc.
Ich empfehle dir einfach mal in der MSDN nach den spezifischen Messages zu suchen, denn die sind nämlich für jedes ControlElement ein bissal anders.
Hope that helped...
byebye _________________ If something is stupid and it works, it ain't stupid! |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.12.2003, 15:31 Titel: |
|
|
thx, hast mir gut weitergeholfen
die Messages waren / sind kein Problem zu finden _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.12.2003, 16:24 Titel: |
|
|
Code: |
int item;
SendDlgItemMessage(hDlg, MYLISTBOX2, CB_SETCURSEL, item, 0); |
Code: |
int item;
SendDlgItemMessage(hDlg, MYLISTBOX2, CB_GETCURSEL, item, 0); |
geht es net
irgendwie krieg ich das mit dem Abfragen eines Feldes nicht hin
P.s. könntest du mich nicht mal im icq adden, dann würds schneller gehn _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
DarK Super JLI'ler
Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 09.12.2003, 19:31 Titel: |
|
|
Code: | int lResult;
lResult=SendDlgItemMessage(hDlg, MYLISTBOX2 ,LB_GETCURSEL,0,0);
sprintf(mystring, "%i", lResult);
MessageBox(hWnd, mystring, "...", 0);
hab es hinbekommen nach 2 stunden ;D |
hab es nach 2 stunden hinbekommen _________________ "Denken ist Arbeit, Arbeit ist Energie und Energie soll man sparen."
"Theorie ist, wenn man alles weiss, aber nichts funktioniert.
Praxis ist, wenn man nichts weiss, aber alles funktioniert.
Realität ist, wenn nichts funktioniert und keiner weiss warum."
"Es gehört ein wenig Mut dazu nicht das zu tun was ALLE tun" |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|