亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? translabel.pas

?? 這部分與維生素D3
?? PAS
字號:
unit TransLabel;
{
	TTransLabel By Paul van Dinther Copyright Diprode 24-01-2000
	e-mail: paul@diprode.com
	Website: http://www.diprode.com

	TTransLabel inherits from TCustomTransCanvas. Normally you'd find the paint
	method to be overridden. In this case the DoPaint OnPaint eventhandler
	encapsulation is being overriden. Thus providing a tidy integration with
	TCustomTransCanvas. TTransLabel is like a TLabel component but it can render
	transparent and render with an additional transparent shadow.

	Have a look at GIFLine Pro on http://www.diprode.com/giflinepro.htm to see
	this component in action.
}
interface

uses
	Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
	TransCanvas;

type
	TTextLayout = (tlTop, tlCenter, tlBottom);
	TTransLabel = class(TCustomTransCanvas)
	private
		FFocusControl: TWinControl;
		FTransParent: Boolean;
		FAlignment: TAlignment;
		FAutoSize: Boolean;
		FLayout: TTextLayout;
		FWordWrap: Boolean;
		FShowAccelChar: Boolean;
		procedure AdjustBounds;
		procedure DoDrawText(PCanvas: TCanvas; var PRect: TRect; Flags: Word);
		procedure SetAlignment(Value: TAlignment);
		procedure SetFocusControl(Value: TWinControl);
		procedure SetShowAccelChar(Value: Boolean);
		procedure SetTransparent(Value: Boolean);
		procedure SetLayout(Value: TTextLayout);
    procedure SetWordWrap(Value: Boolean);
		procedure CMTextChanged(var Message: TMessage); message CM_TEXTCHANGED;
    procedure CMFontChanged(var Message: TMessage); message CM_FONTCHANGED;
		procedure CMDialogChar(var Message: TCMDialogChar); message CM_DIALOGCHAR;
  protected
		function GetLabelText: string; virtual;
    procedure Loaded; override;
    procedure Notification(AComponent: TComponent;
      Operation: TOperation); override;
		procedure DoPaint(PCanvas: TCanvas); override;
		procedure SetAutoSize(Value: Boolean); virtual;
	public
		constructor Create(AOwner: TComponent); override;
		property Canvas;
	published
	published
		property Alignment: TAlignment read FAlignment write SetAlignment	default taLeftJustify;
		property AutoSize: Boolean read FAutoSize write SetAutoSize default True;
		property FocusControl: TWinControl read FFocusControl write SetFocusControl;
		property ShowAccelChar: Boolean read FShowAccelChar write SetShowAccelChar default True;
		property Transparent: Boolean read FTransparent write SetTransparent;
		property Layout: TTextLayout read FLayout write SetLayout default tlTop;
		property WordWrap: Boolean read FWordWrap write SetWordWrap default False;
		property UseCalcEvent;
		property OnCalc;
		property CanvasType;
		property TransFade;
		property TransType;
		property TransPercent;
		property TransMinCutoff;
		property TransMaxCutoff;
		property TransKeyColor;
		property TransBiasPercent;
		property ScreenBiasPercent;
		property Inverse;
		property OnPaint;
		//Standard Properties
		property Align;
		property Caption;
		property Color;
		property DragCursor;
		property DragMode;
		property Enabled;
		property Font;
		property ParentColor;
		property ParentFont;
    property ParentShowHint;
    property PopupMenu;
		property ShowHint;
		property Visible;
		property OnClick;
    property OnDblClick;
    property OnDragDrop;
    property OnDragOver;
    property OnEndDrag;
    property OnMouseDown;
		property OnMouseMove;
    property OnMouseUp;
		property OnStartDrag;
	end;

procedure Register;

implementation

uses consts;

procedure Register;
begin
	RegisterComponents('Diprode', [TTransLabel]);
end;

constructor TTransLabel.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
	ControlStyle := ControlStyle + [csOpaque, csReplicatable];
	Width := 65;
	Height := 17;
	FAutoSize := True;
	FTransparent := True;
	FShowAccelChar := True;
end;

function TTransLabel.GetLabelText: string;
begin
	Result := Caption;
end;

procedure TTransLabel.DoDrawText(PCanvas: TCanvas; var PRect: TRect; Flags: Word);
var
	Text: string;
begin
	Text := GetLabelText;
	if (Flags and DT_CALCRECT <> 0) and ((Text = '') or FShowAccelChar and
		(Text[1] = '&') and (Text[2] = #0)) then Text := Text + ' ';
	if not FShowAccelChar then Flags := Flags or DT_NOPREFIX;
	PCanvas.Font := Font;
	if not Enabled then
	begin
		OffsetRect(PRect, 1, 1);
		PCanvas.Font.Color := clBtnHighlight;
		DrawText(PCanvas.Handle, PChar(Text), Length(Text), PRect, Flags);
		OffsetRect(PRect, -1, -1);
		PCanvas.Font.Color := clBtnShadow;
		DrawText(PCanvas.Handle, PChar(Text), Length(Text), PRect, Flags);
	end
	else
		DrawText(PCanvas.Handle, PChar(Text), Length(Text),PREct , Flags);
end;

procedure TTransLabel.DoPaint(PCanvas: TCanvas);
const
	Alignments: array[TAlignment] of Word = (DT_LEFT, DT_RIGHT, DT_CENTER);
	WordWraps: array[Boolean] of Word = (0, DT_WORDBREAK);
var
	LRect: TRect;
	DrawStyle: Integer;
begin
	inherited DoPaint(PCanvas);
	with PCanvas do
	begin
		if not Transparent then
		begin
			Brush.Color := Self.Color;
			Brush.Style := bsSolid;
			FillRect(ClientRect);
		end;
		Brush.Style := bsClear;
		LRect := ClientRect;
		DrawStyle := DT_EXPANDTABS or WordWraps[FWordWrap] or Alignments[FAlignment];
		{ Calculate vertical layout }
		if FLayout <> tlTop then
		begin
			DoDrawText(PCanvas, LRect, DrawStyle or DT_CALCRECT);
			if FLayout = tlBottom then OffsetRect(LRect, 0, Height - LRect.Bottom)
			else OffsetRect(LRect, 0, (Height - LRect.Bottom) div 2);
		end;
		DoDrawText(PCanvas, LRect, DrawStyle);
	end;
end;

procedure TTransLabel.Loaded;
begin
	inherited Loaded;
	AdjustBounds;
end;

procedure TTransLabel.AdjustBounds;
const
	WordWraps: array[Boolean] of Word = (0, DT_WORDBREAK);
var
	DC: HDC;
	X: Integer;
	Rect: TRect;
begin
	if not (csReading in ComponentState) and FAutoSize then
	begin
		Rect := ClientRect;
		DC := GetDC(0);
		Canvas.Handle := DC;
		DoDrawText(Canvas, Rect, (DT_EXPANDTABS or DT_CALCRECT) or WordWraps[FWordWrap]);
		Canvas.Handle := 0;
		ReleaseDC(0, DC);
		X := Left;
		if FAlignment = taRightJustify then Inc(X, Width - Rect.Right);
		SetBounds(X, Top, Rect.Right, Rect.Bottom);
	end;
end;

procedure TTransLabel.SetAlignment(Value: TAlignment);
begin
  if FAlignment <> Value then
	begin
		FAlignment := Value;
		AdjustBounds;
		Invalidate;
  end;
end;

procedure TTransLabel.SetAutoSize(Value: Boolean);
begin
	if FAutoSize <> Value then
	begin
		FAutoSize := Value;
		AdjustBounds;
	end;
end;

procedure TTransLabel.SetFocusControl(Value: TWinControl);
begin
	FFocusControl := Value;
	if Value <> nil then Value.FreeNotification(Self);
end;

procedure TTransLabel.SetShowAccelChar(Value: Boolean);
begin
	if FShowAccelChar <> Value then
	begin
		FShowAccelChar := Value;
		Invalidate;
	end;
end;

procedure TTransLabel.SetTransparent(Value: Boolean);
begin
	if Transparent <> Value then begin
		FTransParent := Value;
		if FTransParent then ControlStyle := ControlStyle - [csOpaque]
		else ControlStyle := ControlStyle + [csOpaque];
		Invalidate;
	end;
end;

procedure TTransLabel.SetLayout(Value: TTextLayout);
begin
  if FLayout <> Value then
  begin
    FLayout := Value;
    Invalidate;
  end;
end;

procedure TTransLabel.SetWordWrap(Value: Boolean);
begin
  if FWordWrap <> Value then
	begin
		FWordWrap := Value;
		AdjustBounds;
    Invalidate;
	end;
end;

procedure TTransLabel.Notification(AComponent: TComponent;
  Operation: TOperation);
begin
  inherited Notification(AComponent, Operation);
  if (Operation = opRemove) and (AComponent = FFocusControl) then
    FFocusControl := nil;
end;

procedure TTransLabel.CMTextChanged(var Message: TMessage);
begin
  Invalidate;
	AdjustBounds;
end;

procedure TTransLabel.CMFontChanged(var Message: TMessage);
begin
  inherited;
	AdjustBounds;
end;

procedure TTransLabel.CMDialogChar(var Message: TCMDialogChar);
begin
  if (FFocusControl <> nil) and Enabled and ShowAccelChar and
    IsAccel(Message.CharCode, Caption) then
    with FFocusControl do
      if CanFocus then
      begin
        SetFocus;
        Message.Result := 1;
      end;
end;


end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内外成人在线| 91久久奴性调教| av网站免费线看精品| 欧美日韩国产美女| 中文字幕在线免费不卡| 男男视频亚洲欧美| 欧美三级电影在线看| 中文字幕制服丝袜成人av| 蜜臀精品一区二区三区在线观看 | 欧美国产日韩精品免费观看| 一区二区三区四区精品在线视频| 激情五月婷婷综合| 欧美一区二区三区不卡| 亚洲精品中文在线观看| 韩国成人福利片在线播放| 69精品人人人人| 亚洲大片在线观看| 色欧美乱欧美15图片| 亚洲欧洲成人av每日更新| 国产成人精品三级| 久久精品亚洲一区二区三区浴池 | 午夜精品久久久久久久| 99re8在线精品视频免费播放| 久久久99久久精品欧美| 久久精品国产一区二区三区免费看| 欧美性生活久久| 亚洲黄一区二区三区| 色呦呦国产精品| 亚洲另类在线一区| 色噜噜夜夜夜综合网| 中文字幕一区二区三区乱码在线| 国产精品一区免费视频| 久久理论电影网| 国产一区不卡在线| 久久精品亚洲精品国产欧美kt∨ | 国产成人午夜高潮毛片| 久久久99精品久久| 成人小视频在线| 国产精品污www在线观看| 成人免费看片app下载| 中文字幕av在线一区二区三区| 成人综合在线观看| 亚洲欧洲精品成人久久奇米网| 97se亚洲国产综合自在线不卡| 亚洲区小说区图片区qvod| 一本大道久久精品懂色aⅴ| 自拍偷拍亚洲综合| 欧美日韩国产不卡| 精品一区二区在线观看| 久久久99久久精品欧美| 97精品视频在线观看自产线路二| 亚洲欧美日韩人成在线播放| 在线精品视频免费播放| 免费一级片91| 久久久久久久久久久黄色| 不卡视频免费播放| 亚洲综合色丁香婷婷六月图片| 91.xcao| 久久精品国产第一区二区三区| 久久久久国产精品麻豆ai换脸 | 亚洲成人午夜影院| 91精品视频网| 成人午夜私人影院| 亚洲一区二区精品3399| 欧美大片拔萝卜| 91在线观看一区二区| 日韩电影一区二区三区四区| 国产农村妇女毛片精品久久麻豆| 日本高清不卡aⅴ免费网站| 日韩一区精品视频| 国产精品久久久久久久久免费相片| 欧美中文字幕亚洲一区二区va在线| 奇米精品一区二区三区四区 | 成人一区二区三区| 亚洲成人免费视频| 中文无字幕一区二区三区| 欧美日韩一级大片网址| 成人性生交大合| 免费成人在线视频观看| 亚洲三级理论片| 亚洲精品在线免费播放| 欧美日韩在线直播| www.欧美.com| 国产中文字幕精品| 天天av天天翘天天综合网| 一色屋精品亚洲香蕉网站| 日韩色视频在线观看| 欧美中文字幕一区二区三区亚洲| 国产成人精品亚洲午夜麻豆| 免费一级片91| 亚洲成人www| 亚洲欧美激情视频在线观看一区二区三区| 日韩女优毛片在线| 欧美图片一区二区三区| 9i在线看片成人免费| 国产成人在线影院| 蜜桃精品视频在线观看| 午夜久久久久久电影| 综合欧美一区二区三区| 中文字幕不卡的av| 久久久久国产一区二区三区四区 | 国产宾馆实践打屁股91| 毛片一区二区三区| 婷婷一区二区三区| 亚洲电影一级黄| 亚洲成人7777| 亚洲成av人综合在线观看| 亚洲一区二区在线播放相泽 | 五月天欧美精品| 亚洲女子a中天字幕| 中文字幕一区二区三中文字幕| 国产午夜精品久久| 亚洲精品一区二区三区蜜桃下载 | 日韩制服丝袜先锋影音| 亚洲综合无码一区二区| 一区二区三区四区国产精品| 亚洲色图欧美激情| 一区二区三区四区视频精品免费 | 中文字幕一区视频| 亚洲欧洲精品天堂一级| 亚洲视频一区在线观看| 日韩伦理电影网| 亚洲精品v日韩精品| 一区二区三区精品在线| 久久99热这里只有精品| 全国精品久久少妇| 久久精品国产精品亚洲红杏| 国产真实乱子伦精品视频| 国产精品一区一区| 99vv1com这只有精品| 欧美亚洲另类激情小说| 337p亚洲精品色噜噜狠狠| 欧美一区二区三区白人| 欧美精品一区二区三区四区| 国产精品亲子伦对白| 亚洲欧美激情一区二区| 日韩国产欧美在线视频| 国内精品嫩模私拍在线| 成人精品gif动图一区| 91福利在线看| 日韩三级中文字幕| 欧美激情一区在线| 亚洲午夜久久久久| 久久99精品久久久| 99精品久久只有精品| 4438x成人网最大色成网站| 精品久久久影院| 国产精品国产自产拍高清av王其| 一区二区三区国产精华| 蜜臀久久99精品久久久久久9| 国产二区国产一区在线观看 | 国产精品白丝av| 色吊一区二区三区| 日韩一二在线观看| 国产精品理伦片| 日本中文一区二区三区| 国产成都精品91一区二区三| 91成人免费在线视频| 久久久久久**毛片大全| 亚洲一区二区三区四区在线观看 | 欧美一级高清片在线观看| 国产欧美日韩激情| 日日骚欧美日韩| 99久久免费视频.com| 精品捆绑美女sm三区| 亚洲一二三级电影| 成人晚上爱看视频| 日韩精品一区二区三区在线播放 | 欧美亚洲动漫精品| 国产精品久久二区二区| 亚洲国产成人porn| 欧洲精品中文字幕| 在线观看中文字幕不卡| 久久久综合网站| 日韩福利电影在线观看| 色综合天天综合网国产成人综合天| 日韩视频一区二区三区| 亚洲一二三区在线观看| 成人高清视频在线| 久久亚区不卡日本| 免费观看日韩av| 精品视频色一区| 亚洲日本电影在线| 成人午夜视频免费看| 2020日本不卡一区二区视频| 亚洲精品自拍动漫在线| 国产精品99久久久久| 欧美成人午夜电影| 蜜臀av一区二区在线免费观看| 欧美写真视频网站| 亚洲精品国产品国语在线app| 成人午夜私人影院| 久久老女人爱爱| 另类的小说在线视频另类成人小视频在线 | 美女视频一区在线观看| 在线欧美日韩精品| 又紧又大又爽精品一区二区| 91在线国产福利| 亚洲男人都懂的| 91亚洲精品久久久蜜桃|