![]() |
novcl button
Liste der Anhänge anzeigen (Anzahl: 2)
habe einen button erstellt welcher mit einem Bitmap belegt wird
wenn ich nun auf den Button klicke kommt aber wieder der normale Button zum vorschein Woran kann das liegen bzw.. was hab ich vergessen. gruss Emil |
Re: novcl button
Zitat:
Zitat:
|
Re: novcl button
Zitat:
Sonst hätte ich es hier eingefügt. Interessieren würde mich ob ich die ID welche ich lokal definiert habe auch in der resource eintragen muss. Seltsam nur das der erste Button BILD sichbar ist. gruss Emil |
Re: novcl button
Siehe dazu mein
![]() |
Re: novcl button
Zitat:
Ist aber etwas komplizierter hier da ich auf alle Button Skins legen will. da hapert es noch ein bißchen. gruss EMil |
Re: novcl button
Moin moin Emil,
zeichnest du den Button selber (BS_OWNERDRAW)? Dann wäre deine Paint-Methode interessant. ... aber ohne Code ist es wirklich schwierig ... PS: Ich hatte vor einiger Zeit auch mal einen ![]() Evtl. kannste da einige Codeschnipsel verwenden... |
Re: novcl button
Zitat:
Delphi-Quellcode:
Um den ganzen Code jetzt zu posten wäre etwas viel da alles noch über die Winproc läuft usw...
function RegisterButton(ButtonClass: PAnsiChar): BOOL;
var IsInitialized : BOOL; CLASS_NAME : PAnsiChar; begin CLASS_NAME := ButtonClass; dlgClass.cbSize := SIZEOF(dlgClass); IsInitialized := GetClassInfoEx(hInstance, ButtonClass, dlgClass); if not IsInitialized then with dlgClass do begin IsInitialized := (GetClassInfoEx(hInstance, 'BUTTON', dlgClass)); if IsInitialized then begin ButOldProc(lpfnWndProc, 1); ButOldExtra(cbWndExtra, 1); lpfnWndProc := @ImageButtonProc; // Reserviere EXTEND_EXTRA bytes zum speichern privater properties cbWndExtra := cbWndExtra + (EXTEND_EXTRA * 4); hInstance := GetInstance; lpszClassName := CLASS_NAME; IsInitialized := Bool(RegisterClassEx(dlgClass)); end; end; Result := IsInitialized; end; aber so kannst meinen ansatz sehen. gruss Emil |
Re: novcl button
Sorry das ich jetzt nochmal poste ;)
Kommt nicht wieder vor. Mir ist da etwas eingefallen bezüglich der button. Ist es möglich das die nur Funktionieren wenn ein Manifest eingebunden ist ? Also das sie beim nächsten klick nicht den Skin verlieren. gruss Emil |
Re: novcl button
Was spricht dagegen, das mal eben schnell auszuprobieren? Allerdings bin ich der Meinung, dass das manifest keine Auswirkung auf selbst gezeichnete Schaltflächen haben sollte.
|
Re: novcl button
Moin moin Emil,
Zitat:
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:
Hierbei wird ja noch kein Bitmap im Button angezeigt :gruebel:
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); Die ganze Paint Methode brauchst du nicht posten, interessant wäre die Stelle im Code, wo du das Bitmap setzt bzw. zeichnest. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:05 Uhr. |
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