Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проблема с создоваемым компонентом / 2 сообщений из 2, страница 1 из 1
18.03.2003, 11:13
    #32121859
ddv
ddv
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с создоваемым компонентом
Создается компонент SpeedButton со свойствами ImageList и ImageIndex для связи с компонентом ImageList. На стадии проектирования все работает, а после компиляции на всех SpeedButton отображается один и тот же Image.
Просьба помочь!!!

unit SpeedButtonImage;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Buttons, ImgList;

type
TSpeedButtonImage = class(TSpeedButton)
private
FImageList:TCustomImageList;
FImageIndex:Integer;
protected
procedure Paint; override;
public
procedure SetImageIndex(Value:Integer);
published
property ImageList:TCustomImageList read FImageList write FImageList;
property ImageIndex:Integer read FImageIndex write SetImageIndex;
end;

procedure Register;

implementation

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

{ TSpeedButtonImage }
procedure TSpeedButtonImage.Paint;
begin
inherited;
if Assigned(FImageList) then
if (FImageIndex in [0..Pred(FImageList.Count)]) then
begin
if not Enabled then
begin
FImageList.Draw(Canvas,Round(FImageList.Width/2),Round(Height/2-FImageList.Height/2),FImageIndex,False)
end
else
FImageList.Draw(Canvas,Round(FImageList.Width/2),Round(Height/2-FImageList.Height/2),FImageIndex,True);
end;
end;

procedure TSpeedButtonImage.SetImageIndex(Value: Integer);
begin
if Assigned(FImageList) then
if (Value in [0..Pred(FImageList.Count)]) then
begin
FImageIndex:=Value;
Paint;
end;
end;

end.
...
Рейтинг: 0 / 0
18.03.2003, 14:40
    #32122164
oleg_e
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблема с создоваемым компонентом
Попробуй не перекрывать метод Paint, а копировать рисунок в Gliph
...
Glyph.Width:=Width;
Glyph.Height:=Height;
FImageList.Draw(Glyph.Canvas, 0, 0, FImageIndex);
...
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проблема с создоваемым компонентом / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]