Das geht ja flux, also Danke für deinen raschen Vorschlag. Hab natürlich mein Beispiel vergessen. Hab keine Ahnung wie ich die Schrifart und Grösse getrennt einstellen kann:
Code: Alles auswählen
; Windows installierte Schriftarten auswählen
; wie kriege ich ins zweite Schriftfeld
Enumeration
#FrameMain
EndEnumeration
;-Constant
Enumeration
#S_Anzeige
#S_Notiz
#SchriftAnzeige
#Font_Anzeige
#Font_AnzeigeButton
#Font_NotizButton
#Grad_Anzeige
#SchriftNotiz
#Font_Notiz
#Grad_Notiz
#Font_Window
EndEnumeration
Global FontID1
Global FontID2
Enumeration
#Font_String_1
#Font_String_2
EndEnumeration
Procedure EnumFontFamProc(*lpelf.ENUMLOGFONT, *lpntm.NEWTEXTMETRIC, FontType, lParam)
AddGadgetItem(#Font_Anzeige,-1,PeekS(@*lpelf\elfLogFont\lfFaceName[0]),0,0)
ProcedureReturn #Font_Anzeige
EndProcedure
Procedure SysInfo_Fonts()
EnumFontFamilies_(GetDC_(GetDesktopWindow_()),0,@EnumFontFamProc(),0)
ReleaseDC_(GetDesktopWindow_(),GetDC_(GetDesktopWindow_()))
EndProcedure
If OpenWindow(#FrameMain,683, 0,620, 600,"Schriften Einstellen",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
StringGadget(#S_Anzeige,10,20,600,40,"Meine Überschrift")
EditorGadget(#S_Notiz,10,80,600,200)
AddGadgetItem(#S_Notiz, -1,"Mein Text vom "+FormatDate("%dd.%mm.%yyyy", Date())+Chr(13))
TextGadget(#SchriftAnzeige,10, 300, 195, 20,"Schrift Anzeige")
ComboBoxGadget(#Font_Anzeige, 95, 300, 195, 20)
ComboBoxGadget(#Grad_Anzeige, 305, 300, 50, 20)
AddGadgetItem(#Grad_Anzeige, -1, "12")
AddGadgetItem(#Grad_Anzeige, -1, "16")
AddGadgetItem(#Grad_Anzeige, -1, "24")
AddGadgetItem(#Grad_Anzeige, -1, "32")
AddGadgetItem(#Grad_Anzeige, -1, "48")
AddGadgetItem(#Grad_Anzeige, -1, "58")
AddGadgetItem(#Grad_Anzeige, -1, "76")
ButtonGadget(#Font_AnzeigeButton,360,300,100,20,"font Überschrift")
ButtonGadget(#Font_NotizButton,465,300,100,20,"font Notiz")
TextGadget(#SchriftNotiz,10, 330, 195, 20,"Schrift Notiz")
ComboBoxGadget(#Font_Notiz, 95, 330, 195, 20)
ComboBoxGadget(#Grad_Notiz, 305, 330, 50, 20)
ListViewGadget(#Font_Window,95,360,480,230,0)
EndIf
SysInfo_Fonts()
;AddGadgetItem(#Font_Anzeige, -1,"ComboBox item ")
Repeat
EventID=WaitWindowEvent()
Select EventID
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
Gadget = EventGadget()
Select Gadget
Case #Font_AnzeigeButton
Schriftart$=GetGadgetText(#Font_Anzeige)
Schriftgrad=Val(GetGadgetText(#Grad_Anzeige))
FontID1 = LoadFont(#Font_String_1, Schriftart$, Schriftgrad, #PB_Font_Bold|#PB_Font_HighQuality)
SetGadgetFont(#S_Anzeige, FontID1)
Case #Font_NotizButton
Schriftart$=GetGadgetText(#Font_Anzeige)
Schriftgrad=Val(GetGadgetText(#Grad_Anzeige))
FontID2 = LoadFont(#Font_String_2, Schriftart$, Schriftgrad, #PB_Font_Bold|#PB_Font_HighQuality)
SetGadgetFont(#S_Notiz, FontID2)
EndSelect
EndSelect
ForEver
Dein Beispiel ist Supi, habe es eingearbeitet, wie komme ich an die Grösse der in Windows verwendeten Schriften bzw. muss man die selbst festlegen?
Gruss ... Velindos