Zum Inhalt springen

Was ist hier falsch???


TripleD

Empfohlene Beiträge

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Link zu diesem Kommentar
Auf anderen Seiten teilen

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...