Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

21

20.01.2006, 16:49

Dann erklär mir mal wie dann DT_SINGLELINE bzw. DT_CALCRECT(gut da ist die breite pflicht) funktionieren soll, wenn das rect nicht überschritten werden darf.

P.S:
"Unless the DT_NOCLIP format is used, this method clips the text so that it does not appear outside the specified rectangle. All formatting is assumed to have multiple lines unless the DT_SINGLELINE format is specified.

If the selected font is too large for the rectangle, this method does not attempt to substitute a smaller font."

Also in gewissen Rahmen geht es sehr wohlund ich sagte ja, dass ich die Bedingungen nicht kenne/kannte.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

PD

unregistriert

22

21.01.2006, 23:45

So, ich hab zwar mittlerweile die Breite von Texten usw... aber ich würde mich noch über weitere hilfe bei der Umsetzung einer Editbox freuen. Also die netten Eingabefelder... ihr wisst schon was ich meine ^^ Ich habe verschiedene Ansätze die bei mir aber alle noch nicht wirklich fuß gefasst haben (ich möchte an dieser Stelle anmerken das meine Kentnisse in sachen WinAPI bescheiden und in sachen DX garnicht vorhanden sind):
1) Selbst eine machen... das hat ja schon ansatzweise funktioniert. Allerdings habe ich noch keine anständige Lösung gefunden um an die eingegebenen Zeichen zu kommen ohne gleich jedes Zeichen einzeln über die Konstanten abzufragen.... da muss es doch was leichteres geben... hab auch versucht mit PeekMessage etc. die WM_CHAR nachrichten irgendwie abzufangen... erfolglos.

2) Es gibt wohl ein DX eigenes Framework welches auch Klassen für GUI Elemente anbietet... allerdings bin ich aus der doku nicht so wirklich schlau geworden da ich die ganze Struktur davon nicht so ganz durchschaut hab...

3) Normale WinAPI elemente... da dachte ich mir mal "sei pfiffig" und hab mir ne normale edit box aus der winapi als child auf mein Fenster gepackt... allerdings wird das (eigentlich logischerweise) von DX regelrecht übermalt. Wenn ich an der Stelle wo sich das Feld befindet etwas mit der Maus rum spiele kann ichs allerdings durchschimmern sehen ^^ Bzw. es flackert dann ein bissl...

Also kann mir hier vielleicht einer nen Vorschlag machen welche Variante ihr empfehlen würdet bzw. mit ner (mehr oder weniger kurzen) Erklärung wie ich dann meine geschilderten Probleme lösen kann? ^^ Wäre euch sehr dankbar für jede Hilfe.

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

23

21.01.2006, 23:57

DX hat zwar eigene aber da musst du dir die ganzen Sachen aus den Beispielen erschließen. Ich persönlich habe mir eine eigene Klasse geschrieben, diese ist zwar weder schön noch schnell, aber sie erfüllt das für mich wichtigste Kreterium : Sie funktioniert :)
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

PD

unregistriert

24

22.01.2006, 12:08

Naja, meine hat auch ansatzweise funktioniert... nur hab ich wie gesagt an dem Problem gesessen wie ich die Eingaben des Benutzers hole. Den Ansatz den ich versucht hatte war, die WM_CHAR Nachricht aus der Window Proc zu holen und mittels einer methode an Davids Input klasse zu schicken wo ich das char solange speicher bis es entweder ersetzt oder abgeholt wurde... das Problem an der Sache: Man bekommt nur einen Buchstaben ab fals z.B. 2 gedrückt wurden und man bekommt den Buchstaben auch noch 5 Minuten Nachträglich fals er nicht sofort abgeholt wird und seit dem kein neuer gedrückt wurde ^^ Gibts also keinen Weg direkt zu prüfen "Welcher Buchstabe wird jetzt im Moment gedrückt?" ohne jede Taste einzeln zu überprüfen? ^^"

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

25

22.01.2006, 12:49

Nicht das ich wüsste, besonder weil das alles auf dem englischen Tastaturlayout basiert, so von wegen sonderzeichen usw.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

26

23.01.2006, 17:18

warum selber machen wenn es sowas schon gibt?
--->IBM´s-ICU

Werbeanzeige