Zum Inhalt springen

Windows static control


Didii

Empfohlene Beiträge

Servus @all

i bin ein weiteres Mitgliede der IT-Schule von der sich schon einige gemeldet haben (Swordmaster, jasso,...):D

mein Projekt geht über die Klasse CStatic.

hab mich auch schon ein wenig damit befasst, hab jedoch gleich zu Anfang sehr große Probleme!!!:confused:

in der MSDN steht, "The CStatic class provides the functionality of a Windows static control".

Was ist ein Windows static control????

wäre sehr hilfreich wenn mir jemand das erklären könnte!!!

Informationen wo ich mehr über diese Klasse finden kann ( ausser MSDN) wären auch sehr hilfreich.

ich hoffe auf baldmögliche Antworten, weil ich schon ein wenig unter Zeitdruck stehe

Danke

so long didii

Link zu diesem Kommentar
Auf anderen Seiten teilen

habe ein CStatic - Objekt instanziert, doch beim initialisieren mit der Create - Methode

motzt der Compiler!

ich habe probleme bei der 3. Parameter- Angabe.

in der MSDN ist es wie folgt beschrieben:

BOOL Create( LPCTSTR lpszText, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID = 0xffff );

Mein Versuch:

Beispiel.Create(Text, SS_BLACKFRAME, RECT.top(10), IDD_PROJEKT_DIALOG, IDC_TEXT);

was mache ich falsch, bzw.

wahrscheinlich hab ich was bei der RECT-Struktur nicht richtig verstanden!

ich hoffe es kann mir jemand weiterhelfen.

thankx

so long didii

Link zu diesem Kommentar
Auf anderen Seiten teilen

noch ein Problem, wie lege ich eine Rect - Variable an, habe noch nie mit dieser Struktur gearbeitet, bzw. das noch nie gebrauch, und es will einfach nicht klappen!!!

wäre dankbar um eine Zeile Quelltext in der eine solche Variable incl. initialisierung angelegt wird.

bitte helft mir.

thankx

so long didii

Link zu diesem Kommentar
Auf anderen Seiten teilen

erst einmal dankeschön.

jetzt motzt der Compiler beim 3. Parameter nicht mehr.

aber neues Problem

was muss ich bei einer Dialogfeldbasierenden Klasse in C++ beim 4. Parameter der Create - Methode angeben???

ich hab mir gedacht, den Namen des Dialogfeldes, das geht jedoch nicht!!!

kann mir jemand weiterhelfen???

cu

didii

Link zu diesem Kommentar
Auf anderen Seiten teilen

ich habe ein Dialogfeldbasierendes Projekt, mit 2 statischen Feldern, Text und Bild.

ich habe ein neues CStatic Object instanziert und mit Create initialisiert, was kann ich jetzt damit machen, wie kann es am Bildschirm ausgeben??

ich dachte mir dass ich es den Membervariablen für das Text und Bildfeld zuweisen kann, dem ist aber anscheinend nicht so!

Wer kann mir helfen?

und mir erklären was ich damit jetzt machen kann, oder wie ich eine statische Ausgabe auf den Dialog bringe??

muss bis nächste woche ein Projekt zu diesem sch..? machen und kapier das einfach nicht!!!

bitte helft mir weiter

danke

so long didii

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by Didii

ich habe ein neues CStatic Object instanziert und mit Create initialisiert, was kann ich jetzt damit machen, wie kann es am Bildschirm ausgeben??

Wenn Du als Window-Style immer noch nur SS_BLACKFRAME angegeben hast, dann kannst Du nichts sehen. WS_VISIBLE sollte schon sein. Für ein Bitmap-Static-Control mit Rahmen empfehle ich: WS_CHILD | WS_VISIBLE | SS_BITMAP | WS_BORDER.

Ist Deine CStatic-Instanz ein Member der Dialogklasse, oder eine lokale Variable in einer Methode?

Link zu diesem Kommentar
Auf anderen Seiten teilen

es ist eine lokale Variable, passt das??

wenn ich eine Dialogvariable habe, brauche ich den Konstruktor nicht oder???

dann kann ich einfach m_Variablenname.Create(...)

oder???

wenn ich falsch liegen sollte bitte berichtigen

danke für die bisherigen antworen

es werden bestimmt noch weitere fragen auftreten!

ich melde mich :D

//**DUMM darf man sein, man muss sich nur zu helfen wissen**//

Link zu diesem Kommentar
Auf anderen Seiten teilen

Originally posted by Didii

es ist eine lokale Variable, passt das??

Nein. Lokale Variablen werden zerstört, sobald sie ihren Gültigkeitsbereich verlassen, in Deinem Fall also spätestens beim Verlassen der Methode, in der Du die Variable angelegt hast. Im Destruktor von CStatic wird DestroyWindow aufgerufen, damit ist das Control wieder weg.

Mach eine Membervariable der Dialogklasse draus, oder hole den Speicher dynamisch. Dann sollte sich aber die Dialogklasse den Zeiger merken, um ihn am Ende wieder freizugeben.

Link zu diesem Kommentar
Auf anderen Seiten teilen

BOOL Create( LPCTSTR lpszText, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID = 0xffff );

das n bei nID im 5 Parameter steht doch für eine Int-Zahl oder?

woraus kann ich diese Zahl ersehen, die meine ID hat???

bitte um hilfe

evtl. auch mit konkretem Bsp.

danke

so long didii

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...