Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi novcl button (https://www.delphipraxis.net/121841-novcl-button.html)

turboPASCAL 6. Okt 2008 15:14

Re: novcl button
 
Das Manifest legt fest wie Windows die Buttons darstellt also welches Schema der Darstellung.
Da du Deine Buttons etc. selber Zeichnest ist das uninteresant weil du nicht die Windows-Themen
verwendest.

Anderenfalls wenn du deine Buttons etc. mit Windows-Themen (UxTheme.pas) ertellst hätte ein Manifest
eine Auswirkung.

EWeiss 6. Okt 2008 15:23

Re: novcl button
 
Zitat:

Zitat von x000x
Moin moin Emil,

Zitat:

Zitat von EWeiss
...Ist es möglich das die nur Funktionieren wenn ein Manifest eingebunden ist ?...

Das denke ich mal nicht.

Wenn du den Button wieder loslässt, wird dann das Bitmap wieder angezeigt?
Mir ist auch nicht ganz klar, wie du das Bitmap in den Button bekommst. Zeichnest du es selber, oder
setzt du es mit dem Style BS_BITMAP?
Delphi-Quellcode:
          Style := WS_CHILD or WS_VISIBLE or WS_TABSTOP or BS_PUSHBUTTON;
          // das Window für die Button's erstellen
          hBut := CreateWindowEx(WS_EX_TRANSPARENT,
                                 BUTTONIMAGE, '',
                                 Style, x, y, btW, btH,
                                 hOwner, ButID, GetInstance, nil);
Hierbei wird ja noch kein Bitmap im Button angezeigt :gruebel:
Die ganze Paint Methode brauchst du nicht posten, interessant wäre die Stelle im Code, wo du das Bitmap setzt bzw. zeichnest.

Schau mal unter
Delphi-Quellcode:
function CreateButtonImage (hOwner : HWND; FullPathImageName: PAnsiChar;
EDIT:
Delphi-Quellcode:
SetImageProperty(hBut, PROP_STYLE, BS_BITMAP);
gruss Emil

EWeiss 6. Okt 2008 15:28

Re: novcl button
 
Zitat:

Zitat von turboPASCAL
Das Manifest legt fest wie Windows die Buttons darstellt also welches Schema der Darstellung.
Da du Deine Buttons etc. selber Zeichnest ist das uninteresant weil du nicht die Windows-Themen
verwendest.

Anderenfalls wenn du deine Buttons etc. mit Windows-Themen (UxTheme.pas) ertellst hätte ein Manifest
eine Auswirkung.

Und das ist meine vermutung das es in Delphi nicht will.
In Basic verwende ich das auch deaktiviere ich die Resource im Code
sehe ich auch nur noch einen Standard Button nach dem click

HMmmm.... :roll: :roll:

Delphi-Quellcode:
hWinXP_Lib = LoadLibrary("UxTheme.dll")
IF hWinXP_Lib THEN
   hWinXP_IsThemeActive = GetProcAddress(hWinXP_Lib, "IsThemeActive")
END IF
Es scheint also das die API ohne diese DLL nicht in der lage ist den SkinButton
vernünftig zu zeichnen.

gruss Emil

EWeiss 9. Okt 2008 06:03

Re: novcl button
 
Liste der Anhänge anzeigen (Anzahl: 1)
langsam geht es weiter ;)

gruss Emil


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:09 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz