📄 psslider.h
字号:
//---------------------------------------------------------------------------
#ifndef PSSliderH
#define PSSliderH
//---------------------------------------------------------------------------
#include <SysUtils.hpp>
#include <Controls.hpp>
#include <Classes.hpp>
#include <Forms.hpp>
#include "PSScale.h"
#include "PSGradient.h"
#include "PSBevel.h"
//---------------------------------------------------------------------------
class PACKAGE TPSSlider : public TCustomControl
{
private:
void __fastcall DrawButton (TCanvas *can, int bl, int bt, int bw, int bh);
int middle;
TPSScale *FScale;
TPSGradient *FGradient;
TPSBevel *FBevel;
double FPosition;
bool buttonpressed;
int mousex, mousey;
void __fastcall PixToPos (int val);
void __fastcall SetPosition (double val);
TNotifyEvent FOnChange;
TNotifyEvent FOnUserChange;
MESSAGE void __fastcall WMSetFocus(TWMSetFocus &Message);
MESSAGE void __fastcall WMKillFocus(TWMKillFocus &Message);
Word PressedKey;
bool keystate;
double FSmallStep, FBigStep;
int FMin, FMax;
void __fastcall SetMin (int val);
void __fastcall SetMax (int val);
void __fastcall ExtChange (TObject *Sender);
protected:
void __fastcall Paint (void);
DYNAMIC void __fastcall MouseDown(TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall MouseUp(TMouseButton Button, Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall MouseMove(Classes::TShiftState Shift, int X, int Y);
DYNAMIC void __fastcall KeyPress(char &Key);
BEGIN_MESSAGE_MAP
VCL_MESSAGE_HANDLER(WM_SETFOCUS, TWMSetFocus, WMSetFocus);
VCL_MESSAGE_HANDLER(WM_KILLFOCUS, TWMKillFocus, WMKillFocus);
END_MESSAGE_MAP(TCustomControl);
public:
__fastcall TPSSlider(TComponent* Owner);
__published:
__property double Position = {read=FPosition, write=SetPosition};
__property TNotifyEvent OnChange = {read=FOnChange, write=FOnChange};
__property TNotifyEvent OnUserChange = {read=FOnUserChange, write=FOnUserChange};
__property TabStop;
__property TabOrder;
__property int Min = {read=FMin, write=SetMin, default=-20};
__property int Max = {read=FMax, write=SetMax, default=100};
__property TPSScale *Scale = {read=FScale, write=FScale};
__property double SmallStep = {read=FSmallStep, write=FSmallStep};
__property double BigStep = {read=FBigStep, write=FBigStep};
__property TPSGradient *Gradient = {read=FGradient, write=FGradient};
__property OnKeyPress;
__property TPSBevel *Bevel = {read=FBevel, write=FBevel};
__property OnClick;
};
//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -