Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Brauche einen Anstoss

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ] [ 3 ]
000
02.10.2002, 18:52 Uhr
~Klaus
Gast


Also ich habe 2 Edit boxen (bei haben ne variable m_edit1 m_edit2).In der Edit1 kann man die ip eintragen und edit 2 das passwort.So jetz das problem wenn z.b nur was in edit1 steht soll er in m_test nur "verbinden mit ...." schreiben und wenn in beiden was steht (in beiden Editfeldern) dan soll da stehen "verbinden mit ....und dem passwort ....." .Jetz die frage wie mache ich das irgent wie habe ich grade einen block im kopf mir fehlt partuh nichts ein.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.10.2002, 19:17 Uhr
Programmer



Also... mache dies mal mit einer IF ELSE methode....
schaue, dass deine Variable m_test den Typ CString hat und Public angekreuzt is. Wenn nicht, erstelle sie neu.

Danach kannst du wie folgt vorgehen:

1. Wähle im Klassenassi die Funktion IDC_EDIT1 aus und wähle die Funktion "OnUpdate". In diese Funktion schreibst du danach m_test = "Verbinden mit...";

2. mache genau dasselbe mit IDC_EDIT2. Schreibe dort nur m_test = "Verbinden mit.... Passwort: .....";

In der Praxis sieht es in etwa so aus:

C++:
void CMyDialog::OnUpdate(IDC_EDIT1) //Diese Funktion erstellt der Assi selbst!!!
{
m_test += "Verbinden mit" + m_Edit1;
}


beim zweiten einfach m_Edit2 nehmen....

Nochmals: Du hast dann ein Text oder Editfeld (IDC_EDIT3, variable m_strMsg --_> musste erst erstellen!!!!). m_Test ist ein CString....
Wenn du dies hast, kannste dann der m_Test anzeigen lassen. Wenn du meinst, wie ich meine.
irgendwie so sollte es gehen, weiss leoder auch nicht mehr!

DIE 2 VARIANTE wäre:

1. Füge dem Button "Verbinden" die Funktion BN_CLICKED hinzu.
2. in die Funktion schreibst du folgendes:


C++:
if(m_Edit1 == OnUpdate())
{
m_Test += "Verbinden mit..."; //ODER SO ÄHNLICH
}
else
{
}
if((m_Edit1 == OnUpdate()) && (m_Edit2 == OnUpdate())
{
m_Test += "Verbinden mit.... Passwort:";
}




PS: Das war nur ein ANSTOSS!! Wie es wirklich genau geht und funktioniert, findest du's sicher noch selbst raus. Ansonsten poste einfach wieder!

Meine art hier war ein PSEUDO CODE! Kein Code, der funktionierren könnte!
mfg
Programmer
--
Moderator werden? Null Problemo!! Werden gesucht auf:
http://4116.rapidforum.com

Visti www.it-center.ch.tf
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.10.2002, 19:46 Uhr
~Klaus
Gast


Ich habe deine 2 variante bevorzug aber mekert rum das er kein OnUpdate kennt.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.10.2002, 19:55 Uhr
Programmer




Zitat:
~Klaus postete
Ich habe deine 2 variante bevorzug aber mekert rum das er kein OnUpdate kennt.


Oh, Sorry!
War mein Fehler!!
OnUpdate is ja die Funktion, die du durch den KlassenAssi erstellt hast!

Anstatt onUpdate() kommt da TRUE rein!
Sorry..... ;(

mfg
Programmer
--
Moderator werden? Null Problemo!! Werden gesucht auf:
http://4116.rapidforum.com

Visti www.it-center.ch.tf
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.10.2002, 20:05 Uhr
~Klaus
Gast


Ausdruck ergibt keine Funktion bei


C++:
    if(IDC_EDIT_IP == TRUE())
    if((IDC_EDIT_IP == TRUE()) && (IDC_EDIT_PASS == TRUE()))



 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.10.2002, 20:22 Uhr
Programmer




Zitat:
~Klaus postete
Ausdruck ergibt keine Funktion bei


C++:
    if(IDC_EDIT_IP == TRUE())
    if((IDC_EDIT_IP == TRUE()) && (IDC_EDIT_PASS == TRUE()))






Nene, aber du bist auf dem richtigen weg! ... Wenn schon, dann so:
Ach ja... bei IF Anweiseungen nimm IMMER die VARIABLE!!!!
So etwa:


C++:
if(m_EditIP == TRUE)
{
//Dann mach das
}
else
{
}
if((m_EditIP == TRUE) && (m_EditPasswd == TRUE))
{
//mach dies oder das
}
else
{
}



Du kannst aber auch, wenn die obige Funktion net gehen sollte, alles auch so machen:


C++:
if(m_EditIp == TRUE)
{
    if(m_EditPasswd == TRUE)
    {
     //Schreibe Verbinde mit und dem Passwort
    }
    else
    {
     //Schreibe nur VERBINDE MIT....
    }
}
else
{
//MEssageBox ("Sie müssen eine IP angeben") oder so was....
}


Diese Methode sollte funzen....
mfg
Programmer
--
Moderator werden? Null Problemo!! Werden gesucht auf:
http://4116.rapidforum.com

Visti www.it-center.ch.tf
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
02.10.2002, 20:33 Uhr
~Klaus
Gast


Also ich will ja nich nerven aber so:


C++:
    if(m_ip == TRUE)
    {
       m_para += "Verbinden mit...";
    }

    if((m_ip == TRUE) && (m_pass == TRUE))
    {
        m_para += "Verbinden mit.... Passwort:";
    }



Habe ich das Problem das einfach nichts zu m_para hinzugefügt wirt.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
02.10.2002, 20:43 Uhr
Programmer



hmmm.... versuchs mal damit;
m_para.SetWindowText(ipAdress);
und
m_para.SetWindowText(ipPasswd);
iPAdress und ipPasswd sind zwei CSTRING-Variablen mit PUBLIC!!!
m_para ist ja (hoffentlich!!) dein STATIC-Textfeld....
VORHER schreibst du aber:
ipAdress += "Verbinden mit..." + m_EditIP;
oder bei der ELSE Funktion
ipPasswd += "Verbinden mit... " + m_EidtIp;
ipPasswd += "\r\n" + "Und dem Passwort:";
ipPasswd += "\r\n" + m_EditPasswd;
Erklärung: \r\n heisst NEUE ZEILE.
Du solltest dann folgendes bekommen:

Verbinden mit (HIER DIE EINGEGEBENE IP)
Und dem passwort (DA DAS PASSWORT)

Also kurz zusammengefasst die Funktion;


C++:


    if(m_ip == TRUE)
    {

     ipAdress += "Verbinden mit" + m_ip;
    m_para.SetWindowText(ipAdress);
    }

    if((m_ip == TRUE) && (m_pass == TRUE))
    {
ipPasswd += "Verbinden mit... " + m_ip;
ipPasswd += "\r\n" + "Und dem Passwort:";
ipPasswd += "\r\n" + m_pass;
m_para.SetWindowText(ipPasswd);
}



PS: Vorher erstelle zwei PublicVariablen mit dem Typ CString.
Die eine ipAdress und die andere ipPasswd. Also

public:
CString ipAdress;
CString ipPasswd.

mfg
Programmer
--
Moderator werden? Null Problemo!! Werden gesucht auf:
http://4116.rapidforum.com

Visti www.it-center.ch.tf

Dieser Post wurde am 02.10.2002 um 20:45 Uhr von Programmer editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
02.10.2002, 21:14 Uhr
~Klaus
Gast



C++:
    CString ipAdress;
    CString ipPasswd;

    if(m_ip == TRUE)
    {
       ipAdress += "Verbinden mit" + m_ip;
       m_para.SetWindowText(ipAdress);
    }

    if((m_ip == TRUE) && (m_pass == TRUE))
    {
       ipPasswd += "Verbinden mit... " + m_ip;
       ipPasswd += "\r\n" + "Und dem Passwort:";
       ipPasswd += "\r\n" + m_pass;
       m_para.SetWindowText(ipPasswd);
    }



error C2039: 'SetWindowTextA' : Ist kein Element von 'CString'
Siehe Deklaration von 'CString'
error C2110: Zwei Zeiger koennen nicht addiert werden
error C2039: 'SetWindowTextA' : Ist kein Element von 'CString'
Siehe Deklaration von 'CString'
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
02.10.2002, 21:20 Uhr
Programmer



Ja, sorry, mein Fehler!!
Also nochmals von vorn....

1. Erstelle eine Variable CString string; PUBLIC!!!
2. Erstelle ein StaticText in deinem Dialog
3. Gib dem STATIC Text die ID IDC_STATICMSG und die Variable m_strMsg.
4. Die m_strMsg sollte CONTROL bei VariableTyp sein! NICHT CString!

5. Füge bei der BN_CLICKED Funktion folgendes mal ein:


C++:
    UpdateData(TRUE);
    if((m_ip == TRUE) && (m_passwd == TRUE))
    {
            CString zeile ("\r\n");
        string += "Verbinden mit " + m_ip;
        string += zeile + "Passwort lautet: ";
        string += m_passwd;
    }
    else
    {
        string += "";
        if((m_ip == TRUE)&&(m_passwd == FALSE))

        {
                string += "Verbinden mit " + m_ip;
        }
        else
        {
            string += "";
        }
    }
    m_strMsg.SetWindowText(string);


Ich bin jetzt auch am rumprobieren... dies hier sollte funzen....
--
Moderator werden? Null Problemo!! Werden gesucht auf:
http://4116.rapidforum.com

Visti www.it-center.ch.tf
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ]     [ VC++ / MFC ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: