Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Dialog Anwendung // Designfrage

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
13.01.2005, 23:40 Uhr
nr9370



Hallo,

zu meinem Dialog mit den Tabs möchte ich nun ein nicht modales Fenster für die Debug Ausgabe hinzufügen. Wo soll es am besten erzeugt werden? ICh dachte mir, dass es sinnvoll wäre, das Debug Fenster einmal zu erzeugen, und zwar in OnInitDialog() des Haupdialoges, da es dann von allen Tabs genutzt werden kann. Wenn es von einem Tab benötigt wird, dann zeigt dieser das Fenster und beschreibt es. Bei dieser Lösung ergibt sich jetzt ein Problem: Wie kann ich das Debug Fenster von einem "fremden" Dialog aus beschreiben, wie bekomme ich die Adresse des Fensters?
Vorteil: Nur ein Debug Fenster notwendig, das alle anderen Dialoge beschreiben können.
Die zweite Möglichkeit wäre, für jeden Tab ein eigenes Debug Fenster zu erzeugen. Dann weiß ich die Adresse und es ist leicht das Fenster mit Daten zu füllen. Das blöde dabei ist, dass ich dann mehrere getrennte Fenster habe, die eignetlich alle für das selbe zuständig sind.

Was meint ihr? Welche anderen Möglichkeiten gibt es noch? Was mache ich falsch, dass ich immer auf Elemente von anderen Dialogen/Klassen zugreifen muss?

Danke,
#9370
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
13.01.2005, 23:42 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ob AfxGetMainWnd auch bei nem nicht modalen dialog funzt weiss ich nicht kannst du ja mal ausprobieren... an sonsten z.b. im konstruktor einen pointer übergeben auf den jeweiligen dialog...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
13.01.2005, 23:46 Uhr
nr9370



das mit dem AfxGetMainWnd geht leider nicht - habe ich schon probiert. Tut mir leid wegen der blöden Frage, aber wie meinst du das genau mit dem Pointer übergeben?

Danke,
#9370
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
13.01.2005, 23:57 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


also wenn du von dem "Hauptdialog" öfter mal auf den neu gestarteten DIalog zugreifen willst ist die sache am einfachsten....

du machst ja sowas in der art wenn du den Dialog anschmeisst

C++:
mySelfmadeDlg myDlg;
myDlg.Create(IDD_SELFMADE_DIALOG, this);



wenn du mySelfmadeDlg in den Header packst hast du von diesem Dialog ja ein member mit dem du problemlos auf myDlg zugreifen kannst...

schwierieger dann falls du von dem instantierten mySelfmadeDlg auf den hauptdialog zugreifen willst... hier könntest du einen zeiger im konsturktor mit übergeben (wenn du den konsturktor entsprechend anpasst)...

aber ich würde stark vermuten wenn du this mit übergibst ist das ja schon das parentwindow auf das du dann acces hast mit (AfxGetMainWindow so das geht) oder eventuell mit GetParent....
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
14.01.2005, 00:06 Uhr
nr9370



das ist mir klar. Mein Programm schaut so aus:
Haupdialog mit CTabCtrl; für jeden Tab ein Dialog; Der Hauptdialog soll zusätzlich zu den Tabs auch das nicht modale Fenster erzeugen, auf das dann die Tabs zugreifen sollen. Geht das? Ist das sinnvoll so?

#9370
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.01.2005, 00:11 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


also was sinnvoll ist und was nicht musst du schon selbst entscheiden

es gibt hier im forum ein beispielprojekt zum download für registerkarten... vielleicht hilft dir das ja www.fun-soft.de/Download/TabDlg/TabCtrl.zip

gn8
--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 14.01.2005 um 00:11 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
14.01.2005, 00:14 Uhr
nr9370



Das Beispiel kenne ich bereits, hilft mir leider aber nicht weiter. Vielleicht hat sonst noch jemand eine Idee?

Danke,
#9370
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
15.01.2005, 01:49 Uhr
mmc20
puss in boots


hi,
also du willst von deinen tabs auf ein nicht-modales fenster zugreifen?!
dann leg doch dieses einfach als member deiner hauptklasse an, und übergib den zeiger an die tab-klassen statt "this", dann dürfte das doch eigentlich kein problem sein.

Bearbeitung:
bzw. wenn das "debug-fenster" ein member der hauptklasse ist kannste auch "this" übergeben und dann entsprechend zugreifen...

Dieser Post wurde am 15.01.2005 um 01:51 Uhr von mmc20 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: