Font + API

Windowsspezifisches Forum , API ,..
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
Benutzeravatar
H.Brill
Beiträge: 496
Registriert: 15.10.2004 17:42
Wohnort: 66557 Neunkirchen

Font + API

Beitrag von H.Brill »

Hallo,
Ich hab ne DLL (mit nem Listview). Nun möchte
ich mit dem FontRequester und der API dem Listview
einen anderen Font zuweisen. Ist also ein Fremdfenster.

Wie kann ich das mit API (SelectObject_, und Sendmessage_(
handle, #WM_SetFont bzw. #LVM_Update) machen.
Bis jetzt war ich wohl erfolglos. Kann sein, daß ich die
Parameter wparam und lparam falsch setze.

Hat jemand eine Lösung bzw. einen kurzen Codeschnipsel
zur Hand ?
Benutzeravatar
dysti
Beiträge: 656
Registriert: 10.02.2006 18:34
Wohnort: Schlicktown

Beitrag von dysti »

Hier die Lösung:

SendMessage_(lhandle,4138,-1,0) ;LVM_UPDATE
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Code: Alles auswählen

OpenWindow(0,0,0,400,300,"untitled",#WS_OVERLAPPEDWINDOW | 1)
CreateGadgetList(WindowID(0))
ListIconGadget(0,0,35,400,265,"Name",350)
ButtonGadget(1,5,5,100,23,"Change Font...")

For i=1 To 10 : AddGadgetItem(0,-1,"ListIcon Item #" + Str(i)) : Next

Repeat 
	EventID = WaitWindowEvent()
	
	If EventID = #PB_Event_Gadget And EventGadget() = 1
		Result = FontRequester("",0,0)
		
		If Result
			LoadFont(0,SelectedFontName(),SelectedFontSize(),SelectedFontStyle())
			
			SendMessage_(GadgetID(0),#WM_SETFONT,FontID(0),1)
		EndIf
	EndIf
Until EventID = 16
Antworten