![]() |
Ohne Fremdkomponente Button in die Formleiste bringen
wie kann ich ohen Fremdkomponente einen button neben dem "X" positionieren bzw mehrere Buttons an beliebigen positionen beim formcaption?
mit freundlichen Grüßen (@stan und natürlich ROTFRONT) Nico |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
In der JVCL ist eine Komponente die auch mit Theme unter XP funktioniert. Kannst dir ja mal den SourceCode dazu anschauen.
|
Re: Ohne Fremdkomponente Button in die Formleiste bringen
ja aber ich bin kein jedi fan bei mir funzt das nie :(
--> ich habs also nicht mehr oben ich hatte die komponente ja aber nach 2-3 tagen gehen meine Fremdkompos allesamt nicht mehr :? egal vl wäre wer so nett mri den quellcode zu schicken :love: |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
Brauchst dir die ja die JVCL nicht installieren. Reicht ja wenn du dir die Unit JvCaptionButton anschaust.
|
Re: Ohne Fremdkomponente Button in die Formleiste bringen
Hi!
Delphi-Quellcode:
Gruß,
// ...
private procedure WMNCPaint(var Msg: TWMNCPaint); message WM_NCPaint; // ... procedure TForm1.WMNCPaint(var Msg: TWMNCPaint); begin inherited; // mit GetWindowDC() DC von Form holen // mit GetSystemMetrics() Größe des Buttons ermitteln (SM_CXSIZE, SMCYSIZE) // Button zeichnen, bspw. mit DrawEdge oder per Resource end; Markus PS: Ungetestet. :) |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
WM_NCPAINT ist aber nur eine von wenigen Nachrichten, die man abfangen muss. Hier noch mal ein Beispiel, um den Text der Fenstercaption zu zentrieren:
![]() Hier im Forum, muss auch irgendwo Code von mir rumschwieren, wie man es mit einem Button macht. |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
danke erstmal
jo luckie, könntest du mir den Link posten? danke |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
Ich müsste sleber suchen.
|
Re: Ohne Fremdkomponente Button in die Formleiste bringen
och bitte mach das
mitten i munterricht schreib ich diese nachricht wir machen grad wieder word ^^ |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
Gut:
![]() |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
danke es geht ja :mrgreen:
|
Re: Ohne Fremdkomponente Button in die Formleiste bringen
Zitat:
Bei Jedi sind nämlich 2 Demos dazu dabei, einmal die Jedi Komponente und dann eine Demonstration ohne diese in der Datei Capbtn.pas Aber die Komponente kannst Du auch sehr einfach OHNE installation benutzen. Du nimmst Dir JvCaptionButton.pas JvWndProcHook.pas JvComponent.pas JVCLVer.pas und noch JVCL.inc und JEDI.inc Eigentlich brauchst Du nur die oberen beiden, aber wegen MPL Lizenz, Versionsunterschiede und so.. Dann legst Du ein neues Projekt an, mit folgendem Quellcode .., und das wars.. Danach hast Du Deinen Button oben in der Titelleiste.
Delphi-Quellcode:
viele Grüße
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, JvCaptionButton, ExtCtrls; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private-Deklarationen } public CaptionButton1: TJvCaptionButton; // procedure CaptionButton1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); // procedure CaptionButton1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure CaptionButtonONClick(Sender : TObject); end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.CaptionButtonONClick(Sender: TObject); begin showmessage('Hallo'); end; ////////////////////////////////////////////////////////////////////////// procedure TForm1.FormCreate(Sender: TObject); begin CaptionButton1 := TJVCaptionButton.Create(self); Captionbutton1.OnClick := CaptionButtonONClick; captionbutton1.ButtonLeft := 200; captionbutton1.Caption := '1'; end; ////////////////////////////////////////////////////////////////////////// end. |
Re: Ohne Fremdkomponente Button in die Formleiste bringen
danke nochmals ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:48 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