000
26.06.2004, 11:07 Uhr
t10ottoo
|
Hi,
hab da mal wieder nen Problem:
C++: |
void CDateiverwaltungDlg::cCharFile() { UpdateData(FALSE); if(combo_name_s = CBN_SELCHANGE) { // SELCHANGE ifstream cChar; i = 0; // Wort aus Combo-Box holen combo_name.GetLBText(combo_name.GetCurSel(),combo_name_s);
cChar.open("chars.adv",ios::in);
// ALLES EINLESEN if(cChar) { // if1 while(!cChar.eof()) { // while1 cChar >> id_h[i]; cChar >> name_h[i]; i++; } // while1 } // if1
// JE NACH AUSWAHL IN FELDER AUSGEBEN if(cChar) { // if2 for(int j = 0; j <= i; j++) { // for1 if(combo_name_s == name_h[j].c_str()) { // if2 name = combo_name_s; id = id_h[j]; UpdateData(FALSE); } // if2 } // for1 } // if2 cChar.close(); } // CBN_SELCHANGE else { // else } // else }
|
Also das ist erstmal der Quellcode. Die Funkion "cCharFile" wird aufgerufen, wenn man nen Button geklickt hat. Dann erscheint nämlich diese ComboBox. Und er soll halt nur in die if-Bedingung springen, wenn ich ne Auswahl in der Combo-Box getroffen habe, sonst soller nix machen...Problem ist aber, sobald ich auf den Button klicke, springt er in die Funktion (was ja noch i.O. ist) aber dann springt er auch in die if-Bedingung rein, obwohl ich nix weiter gemacht habe...und hier
C++: |
combo_name.GetLBText(combo_name.GetCurSel(),combo_name_s);
|
kommt dann ein "Debug Assertion Failed!" - Fehler. Der Fehler kommt ja, weil ich noch nix ausgewählt habe und er somit auch nix aus der ComboBox rausholen kann... Ich weiß einfach net, wie ich ihn warten lassen soll, bis ich ne Auswahl getroffen habe...
Hoffentlich habe ich euch mein Problem verständlich rübergebracht Thomas Dieser Post wurde am 26.06.2004 um 11:15 Uhr von t10ottoo editiert. |