Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Написание компонентов и его свойств.

2.1K
03 апреля 2004 года
Werti
47 / / 31.01.2004
Люди кто писал кагда нибудь компоненты помогите.
Я К Компоненту TImage прилипил свойства Caption
Все вроде бы нормально компонент компиоируеться.
Устонавливаеться.
Но при вводе текста в Caption не отображаеться.


unit Imagelbl;

interface

uses
SysUtils, Classes, Controls, ExtCtrls,Windows,Graphics;

type
TImagelbl = class(TImage)
private
fimage:TPicture;
fcaption:String;
procedure SetCaption(Value:String);
{ Private declarations }
protected
procedure Paint;override;
{ Protected declarations }
public
constructor Create(owner:TComponent);override;
destructor Destroy;override;
{ Public declarations }
published
property Font;
property Caption:String read fcaption write SetCaption;

{ Published declarations }
end;

procedure Register;

implementation

procedure Register;
begin
RegisterComponents('Samples', [TImagelbl]);
end;

procedure TImagelbl.SetCaption;
begin
fcaption:=value;
Paint;
end;

procedure TImagelbl.Paint;
begin
inherited Paint;
if fimage.Graphic<>nil then
begin
Canvas.Font:=font;
if Canvas.TextWidth(fcaption)>width then
width:=Canvas.TextWidth(fcaption)
else
width:=fimage.Width;
height:=fimage.Height+Canvas.TextHeight(fcaption);
//Canvas.FillRect(ClientRect); РАскоментировать, если это требуеть однородный задний фон
Canvas.Draw((width-fimage.Graphic.Width) div 2,0,fimage.Graphic);
Canvas.TextOut((fimage.Graphic.Width-Canvas.TextWidth(fcaption)) div 2,fimage.Graphic.height,fcaption);
end;
end;

constructor TImagelbl.Create;
begin
inherited Create(owner);
width:=100;
height:=100;
fcaption:=Name;
fimage:=TPicture.Create;
end;

destructor TImagelbl.Destroy;
begin
fimage.Destroy;
inherited Destroy;
end;

end.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог