Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
Delphi XE3 Enterprise
|
AW: Scrollbar: Slider-Taste zur Maus-klick position.
15. Nov 2012, 12:36
wenn es nicht auf das Pixel genau sein muss ...
Delphi-Quellcode:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TScrollBar=Class(StdCtrls.TScrollBar)
procedure WMLButtonDown( var Message: TWMLButtonDown); message WM_LBUTTONDOWN;
End;
TForm3 = class(TForm)
ScrollBar1: TScrollBar;
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
{ TScrollBar }
procedure TScrollBar.WMLButtonDown( var Message: TWMLButtonDown);
begin
if Kind=sbHorizontal then
begin
if Width > 32 then
Position := Round(Max * ( Message.XPos - 16) / (Width - 32));
end
else
begin
if Height > 32 then
Position := Round(Max * ( Message.YPos - 16) / (Height - 32));
end;
inherited;
end;
end.
Thomas Wassermann H₂♂ Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂♂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
Geändert von Bummi (16. Nov 2012 um 00:08 Uhr)
|