TripleD Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 Hallo, hab ein Programm mit MFC geschrieben. Jetzt hab ich da noch diese Abfrage mit drin. Aber irgendwie bringt der mir immer die MessageBox. An was kann das liegen? void CClientDlg::OnBSenden() { if(m_strIMsg != "") { GetDlgItemText(IDC_EMsg, m_strIMsg); m_ctlOMsg.AddString(m_strIMsg); SetDlgItemText(IDC_EMsg, ""); } else { MessageBox("Es wurde kein Text eingegeben!"); } } Gruß TripleD Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigpoint Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 versuch so: void CClientDlg::OnBSenden() { if(!m_strIMsg.IsEmpty( ) ) { GetDlgItemText(IDC_EMsg, m_strIMsg); m_ctlOMsg.AddString(m_strIMsg); SetDlgItemText(IDC_EMsg, ""); } else { MessageBox("Es wurde kein Text eingegeben!"); } } [/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
TripleD Geschrieben 13. Mai 2004 Autor Teilen Geschrieben 13. Mai 2004 Hi, erst mal danke für deine Hilfe. Mit deiner lösung kann ich einmal was eingeben, aber danach sperrt er wieder mit der MessageBox. TripleD Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Goos Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 Hi, erst mal danke für deine Hilfe. Mit deiner lösung kann ich einmal was eingeben, aber danach sperrt er wieder mit der MessageBox. TripleD if(!m_strIMsg.IsEmpty( ) ) { GetDlgItemText(IDC_EMsg, m_strIMsg); m_ctlOMsg.AddString(m_strIMsg); SetDlgItemText(IDC_EMsg, ""); }[/PHP] Wie soll das denn auch funktionieren? Du ueberpruefst, ob dein String m_strIMsg nicht leer ist und willst ihn dann mit dem Text deines Steuerelements (ich nehm mal an ne Editbox oder sowas) fuellen. Ich kann den Sinn der Abfrage nicht ganz nachvollziehen. Erklaers doch bitte mal Goos Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigpoint Geschrieben 13. Mai 2004 Teilen Geschrieben 13. Mai 2004 Hi, erst mal danke für deine Hilfe. Mit deiner lösung kann ich einmal was eingeben, aber danach sperrt er wieder mit der MessageBox. TripleD setz brakpoint und schau was steht in m_strIMsg, da ich vermute, dass die Variable nicht aktualiesiert ist also CWnd::UpdateData im spiel briengen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
TripleD Geschrieben 13. Mai 2004 Autor Teilen Geschrieben 13. Mai 2004 So, ich habs jetzt. Bevor er das Feld m_strIMsg verkelichen kann, muss er ja erst mal das Feld auslesen: void CClientDlg::OnBSenden() { GetDlgItemText(IDC_EMsg, m_strIMsg); if(m_strIMsg != "") { m_ctlOMsg.AddString(m_strIMsg); SetDlgItemText(IDC_EMsg, ""); } else { MessageBox("Es wurde kein Text eingegeben!"); } } Danke für deine Hilfe. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.