Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Cpropertysheet

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 ] [ 4 ]
000
13.01.2003, 14:05 Uhr
~Lutz
Gast


Hallo,
vielleicht kann mir jemand bei folgendem problem helfen: ich habe einen eigenschaftsdialog mit den klassen CPropertySheet und CPropertyPage erstell. klappt auch alles wunderbar, nur fehlt mir am rahmenfenster der button zum minimieren des fensters. dieser button lässt sich nicht so ohne weiters zufügen, da es für das rahmenfenster keine recource gibt...

vielen dank

Lutz
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.01.2003, 09:47 Uhr
Volle



Hi,

vermutlich startest du deinen Dialog modal. Dann ist keine Minimize- Schaltfläche vorgesehen. Die ist ja dann auch nicht so sehr sinnvoll, weil du den Dialog ja zuerst abarbeiten musst, bevor es weitergeht.

Grüße, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
14.01.2003, 11:08 Uhr
~lutz
Gast


hallo volle,
danke für deine antwort. ja, ich starte den dialog modal aber das ganze programm zeigt sich als dialogbox, deshalb möchte ich es auch mal auf die taskleiste verschwinden lassen können... aber wie kann ich denn die dialogbox gestalten, wenn ich nicht-modal arbeite, ich habe ja keine resource für das rahmenfenster, CPropertySheet bringt ja keine mit??

gruss Lutz
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
14.01.2003, 13:05 Uhr
Volle



Hallo Lutz,

grundsätzlich kannst du alles, was du im Ressourceneditor machst, auch von Hand im Code erledigen.

Dein Minimize- Button ist ein Style. Aber soweit ich weiß, gibt es den nur im Doppelpack mit dem Maximize- Button.

So


C++:
ModifyStyle(NULL, WS_MINIMIZEBOX);


wird er wohl erscheinen. Aber ich glaube, dass du dann selbst für die Funktionalität sorgen musst. Ich bin mir allerdings nicht ganz sicher. Vielleicht weiß ja noch jemand mehr.

Grüße, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
14.01.2003, 13:23 Uhr
~Lutz
Gast


hallo volle,

genau, das mit ModifyStyle() habe ich schon probiert. entweder es gab abstürze oder es erschien ein button, der aber keine wirkung hatte. meine frage daher: wo muss ich ModifyStyle() aufrufen? im constuctor von CPropertySheet? und wenn ich den button am fenster habe, wie bekomme ich die funktionalität? höchswahrscheinlich wird eine nachricht gesendet. weißt du wie die heißt und welche funktion ich dann aufrufen muss, um das fenster zu minimieren??

vielen dank

Lutz
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
14.01.2003, 16:36 Uhr
Alf



Hy!

Mit ModifyStyyle() kenne ich mich nicht aus aber mit:


C++:
ShowWindow(SW_MINIMIZE );


Kannst du dein fenster minimieren.

Mfg

Andy
--
Mfg

Andy
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
15.01.2003, 08:55 Uhr
~Lutz
Gast


danke für den tip. kann mir denn noch jemand erklären, wie ich ohne resourcen einem dialog (CPropertySheet) buttons hinzufügen und die größe des fensters verändern kann?? habe jetzt vor, den dialog nicht-modal mit create() zu erstellen, dann hat er aber keine buttons mehr...

vielen dank

Lutz
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
15.01.2003, 10:22 Uhr
Volle



Hi Lutz,

sorry! Aber ich komme langsam nicht mehr mit, was du eigentlich genau machst. Hast du eine dialogfeldbasiernde Anwendung oder ein DocView- Gerüst?

Wenn du deinen Dialog mit dem Editor machst, dann kannst du den Minimize- Style gleich einstellen. Und der geht dann sogar .

Grundsätzlich ist es aber sowieso egal, wie du deinen Dialog anzeigen lässt - also ob modal oder nicht modal. Das hat keinen Einfluss auf die Erstellung des Dialoges mit dem Ressourceneditor und auch nicht auf die Schaltflächen. Da habe ich mich in meinem ersten Posting etwas missverständlich ausgedrückt...

Auch Create bietet dir die Möglichkeit, eine Ressource einzubinden, das ist kein Problem. Einfach im ersten Parameter die ID des Dialoges angeben, den du mit Ressourceneditor und samt Buttons bzw. Controls und allem erstellst.

Aber für einen Eigenschaftsdialog brauchst du das doch alles gar nicht???

Wenn du deine Buttons ohne Editor machen willst, dann gibt es auch eine Create- Funktion von CButton. Das zieht sich eigentlich durch alle MFC- Klassen durch. In diesem Fall sind CButton und CDialog von CWnd abgeleitet. Sie im Prinzip also nichts anderes als kleine Fenster. Deshalb haben sie grundsätzlich auch mal alle Funktionen, die auch CWnd zur Verfügung stellt - wie z.B. Create oder auch ModifyStyle. Entweder werden die entsprechenden Überladungen der abgeleiteten Klasse aufgerufen (wie bei Create) und/ oder die Funktion der Basisklasse.

Grüße, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
15.01.2003, 11:59 Uhr
~Lutz
Gast


hallo volle,
danke für deine info's. ich habe eine dialogbasierende anwendung und das problem ist, dass der dialog, wenn ich ihn mit DoModal() erzeuge keine schaltfläche zum minimieren hat, da der dialog von CPropertySheet abgeleitet ist. leider gibt auch keine ressource zum dialog. ich weiß daher nicht, wie ich die minimize-schaltfläche in den dialog bekomme. ich hatte daher die idee, den dialog nicht-modal mit create() zu erzeugen. über create() habe ich ja die möglichkeit den dialog mit der minimize-schaltfläche auszustatten (mit den Style-flags). allerdings hat der mit create() erzeugte dialog keine buttons (schließen, ok, hilfe usw.) mehr. ich muss diese also selbst erstellen und da ist mir nicht klar, wie ich das ohne ressource mache. wo rufe ich CButton usw. auf? im konstruktor meiner dialogklasse?

vielen dank

Lutz
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
15.01.2003, 14:39 Uhr
Volle



Hallo Lutz,

also da würde ich dir folgendes empfehlen:

Nimm eine normale, dialogfeldbasierende Anwendung und setze dort ein Property- Control per Editor drauf (so wie hier im Forum unter VC++/MFC beschrieben). Das dürfte wohl der einfachste Weg sein. Damit hast du die Sysleiste komplett mit Funktionalität und kannst deinen Dialog schön wie gewohnt im Ressourceneditor erstellen.

Der andere Weg, der dir gerade vorschwebt ist zwar auch möglich, ist aber etwas komplzierter. Ich denke dabei wirst du nicht drum rum rumkommnen die Messages für den Minimize/Maximize abzufangen (DefWindowPro) um ihnen so Funktionalität einzuhauchen. Aber vielleicht gibt es ja auch noch andere Möglichkeiten (?).

Grüße, Volle.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ] [ 4 ]     [ 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: