Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Übergabe mit WM_COPYDATA

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 <
000
14.06.2005, 14:19 Uhr
raiser999



Hallo

gibt es noch eine andere Möglichkeit außer mit WM_COPYDATA um einen CString von Dialog1 zu Dialog2 zu übertragen


gruß
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.06.2005, 15:51 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


per pointer, temporäre datei, globale variable, ...

gibt vieles

kannst theoretisch auch über ein socket machen
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
15.06.2005, 00:08 Uhr
mmc20
puss in boots


natürlich ... mit ner selbst definierten nachricht zB.

C++:
#define WMU_DAKOMMTEINSTRING WM_USER+1
...
// im Empfänger-dlg muss dann folgendes in die MessageMap (aber ausserhalb des AFX-Blocks !
ON_MESSAGE( WMU_DAKOMMTEINSTRING, DeineFunktion )

// natürlich noch die funktion anlegen
void CDeinDlg::DeineFunktion(WPARAM wParam, LPARAM lParam)
{
     CString tmp = CString(wParam);
...
}

// der aufruf im sender-dlg ist dann ein "normales" sendmessage
// natürlich musst du dir vorher das CWnd des empfängers holen
// zb mit
GetParent()->SendMessage( WMU_DAKOMMTEINSTRING, (WPARAM)"mein String", 0 );
// eventuell auch GetParentOwner()


...oder du fügst einfach per klassen-assi die virtuelle funktion "OnCommand" (im empfänger) hinzu. das sendmessage sieht dann etwas anders aus:

C++:
GetParent()->SendMessage( WM_COMMAND, WMU_DAKOMMTEINSTRING, (LPARAM)"string" );

// und im empfäger/oncommand :
BOOL CDeinDlg::OnCommand(WPARAM wParam, LPARAM lParam)
{
    switch( (UINT)wParam )
    {
        case WMU_DAKOMMTEINSTRING:
        {
            // lParam auswerten
        }
        break;
    }    
    return CDialog::OnCommand(wParam, lParam);
}



ansonsten gehts auch einfacher:
dem dialog eine member ( CString m_sText ) verpassen...

C++:
CMein2terDlg dlg;
dlg.m_sText = "Bla Bla";
dlg.DoModal(); // im dialog wird der string verändert...
CString res = dlg.m_sText;

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
15.06.2005, 09:37 Uhr
raiser999



Hallo

danke für die Tips mal
werds gleich mal probieren

gruß Andi

Dieser Post wurde am 15.06.2005 um 09:46 Uhr von raiser999 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ 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: