Allgemeine Fragen zur PROFAN Programmierung

Views (Heute): 249461 (10897)

| Suchen
| Zurück zur Übersicht

Autor | Thema: Große Schriftarten ...
Lars
| Datum:14.09.01 12:24 (hoefener@web.de) |
Hallo Profaner, ich schreibe an einem Programm mit vielen Formularen und Text. Auf einem Windows - Rechner mit kleinen/normalen Schriftarten sieht auch alles gut aus - aber die großen Schriftarten lassen sämtliche Buttons, Texte und Formularfelder "schlecht" aussehen. Dort klappen dann auch die Taps aus der Prefellow-Vorlage nicht mehr ???? Gibt es eine sinnvolle Lösung ? Dank im Voraus ... Grüße Lars
Frank Abbing
| Datum:14.09.01 14:17 |
Hallo, du mußt halt dafür sorgen, das auf jedem Rechner die gleichen Schriftarten benutzt werden. So geht es mit Texten: UseFont "Arial",16,0,0,0,0 Bei Buttons geht's so: DEF DeleteObject(1) !"GDI32","DeleteObject" hfont& = @Create("Font","Arial",16,0,0,0,0) 'button oder sonstiges erstellen, z.B. button%, dann: SetFont button%,hfont& ... DeleteObject(hfont&) 'zum Programmende hin Ich hoffe das hilft dir weiter! MfG Frank
Bernhard Künzel
| Datum:14.09.01 19:57 (b.kuenzel@chello.at) |
Versuche es einmal so Def GetStockObject(1) ! "GDI32","GetStockObject" Def Ansi_Var_Font(1) SendMessage(&(1),$30,Val(GetStockObject($C)),1) '// Hnd1&=Create("Button",%HWnd,"Test",20,20,100,20) Ansi_Var_Font(Hnd1&) dann bekommst Du in jedes Controllfeld die kleine Schrift wenn Du das Handle nicht brauchst z.B. bei Static-Controlls geht es auch in eíne Zeile Hnd1&=Ansi_Var_Font(Create("Static",%HWnd,"Test",20,20,100,20))
Lars
| Datum:16.09.01 19:13 (hoefener@web.de) |
Vielen Dank für die schnelle Hilfe - leider habe ich derzeit kein Profan zur Seite - ich werde die Varianten aber ausprobieren ... Gelten diese Befehle für alle Objekte - eine Art neue Standardschrift für alle Objekte - ich hab bei ca. 4000 Zeilen schon mehrere .... das wäre sonst eine mühsame Nacharbeit !? Grüße Lars
Bernhard Künzel
| Datum:16.09.01 19:26 (b.kuenzel@chello.at) |
Es muß leider bei jeder Erzeugung eines Controllelementes angewendet werden!
Lars
| Datum:16.09.01 19:46 (hoefener@web.de) |
Das wäre schlimm - gibt es nicht einen Befehl .. pro Fenster ? Ich habe jetzt leider keine Hilfe: was bewirkt setfont 1 oder ähnlich i.V.m. usefont ? grüße lars
Horst Horn
| Datum:16.09.01 20:32 |
Versuch mal so: Declare font1%,h% font1%=CREATEFONT("ARIAL",16,6,0,0,0) '------------------------------------- h%=CREATE("BUTTON",%HWnd,"F1 Hilfe",10,10,100,25) SETFONT h%,font1% Jetzt wird immer der eingestellte Font genommen: "ARIAL",16,6,0,0,0 Du kannst Dir verschiedene Fonts declarieren und immer mit SETFONT übergeben - Soviel ich weiss, klappt das aber erst ab Version 7.0 ?
Jörg Sellmeyer
| Datum:16.09.01 22:29 (joerse@gmx.de) |
Hallo, Schau Dir mal "SetDialogFont" an. Jörg
Lars
| Datum:17.09.01 19:41 (hoefener@web.de) |
Hallo Profaner, "SetDialogFont" meinte ich ja - leider klappt das aber bei mir nicht. Sobald ich ein Fenster mit create erzeuge, sagt er mir kein Fenster vorhanden - mit cls klappt es ? Muß ich durch usefont einen anderen Befehl ersetzen ? Grüße Lars
Frank Abbing
| Datum:17.09.01 19:49 (frankabbing@12move.de) |
Hallo, mit Create... kannst du kein richtiges Fenster erzeugen, nur ein Dialog-Fenster. Du mußt CLS oder Windows... verwenden. MfG Frank
Lars
| Datum:18.09.01 09:21 (hoefener@web.de) |
Und ich dachte immer, dass die createwindow - Fenster die "Standardfenster" im Profanprogramm sind ? Grüße Lars
Roland G. Hülsmann
| Datum: 18.09.01 12:04 (rgh-soft@t-online.de) |
Ich erlaube mir mal, den Sachverhalt zu präzisieren: Mit CREATE("Window",.. bzw. CREATEWINDOW erzeugte Fenster sinds schon "richtige" Windows-Fenster. Manche Befehle verlangen aber ein mit CLS oder WINDOW erzeugtes HAUPT-Fenster. Hier kann es unter Umständen hilfreich sein, ein unsichtbares Fenster mit der Größe 0 zu erzeugen, wenn man kein sichtbares Hauptfenster benötigt.
Bernhard Künzel
| Datum:16.09.01 20:30 (b.kuenzel@chello.at) |
Die Funktion GetStockObject liefert ein Handle zu einem der vordefinierten Stifte, Pinsel oder Schriften. $C0 ist für die ANSI_FAR_FONT Schrift einzusetzen. Ich verwende für alle meine Controllelemente diese Funktion, da sie den Vorteil hat, daß ich sie nicht am Ende des Programms entfernen brauch. Wenn die kleine Schriftart für alle Controllelemente gelten soll, mußt du mit dem ResHacker bei deinem Programm beim LDIALOG die Zeile FONT 8, "MS Sans Serif" einbauen. Dann sind bei allen Controllelementen diese Schrift automatisch vorhanden. Es sollte eigentlich in Profan dieser Font bei allen Dialgen von Herrn Hülsmann eingebaut werden, da dieser Font eigentlich bei den Dialogen schon Standard wäre.

| Zurück zur Übersicht