IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

Наладить общение поможет, если вы подпишитесь по почте на новые темы в этом форуме.

> Компонент
сообщение
Сообщение #1


Я.
****

Группа: Пользователи
Сообщений: 809
Пол: Мужской
Реальное имя: Саша

Репутация: -  11  +


С помощью инета сделал свой компонент. Подскажите, как
unit component1;

interface

{uses
SysUtils, Classes, ExtCtrls;}
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;

var Timer: TTimer;

type
tcomponent1 = class(TComponent)

private
{ Private declarations }
FShowType:boolean;
protected
{ Protected declarations }
procedure OnTimer(Sender: TObject);
public
{ Public declarations }
constructor Create(AOwner:TComponent);override;
published
{ Published declarations }
property ShowType: boolean read FshowType write FShowType;
end;



procedure Register;

implementation

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

constructor tcomponent1.Create(aowner:Tcomponent);
begin
Timer:=TTimer.Create(self);
Timer.Enabled:=true;
Timer.OnTimer:=OnTimer;
Timer.Interval:=1000;
end;

procedure tcomponent1.OnTimer(Sender: TObject);
begin
FShowType:=not FShowType; <<----------------------------------------вот здесь
end;

end.

изменять, например, свойство Visible формы, на которую этот компонент установлен.

Сообщение отредактировано: sheka -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Вот так, например:
unit Component2;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
timage1 = class(TPanel)
private
{ Private declarations }
protected
{ Protected declarations }
procedure MyOnClick(Sender: TObject);
public
{ Public declarations }
constructor Create(AOwner: TComponent); override;
published
{ Published declarations }
image1: Timage; // даже сюда поместил, а не в protected, думал видно будет
end;

procedure Register;

implementation

var b: boolean;
procedure Register;
begin
RegisterComponents('Samples', [timage1]);
end;
constructor timage1.Create(AOwner: TComponent);
begin
inherited;
Self.OnClick := MyOnClick;
image1 := Timage.Create(Self);
with image1 do
begin
Parent := Self;
// OnClick := MyOnClick;
Picture.Bitmap.LoadFromFile('in.bmp');
Left := self.Left + 10;
Top := self.Top + 10;
Height := self.Height - 20;
Width := self.Width - 20;
Visible := true;
Center := true;
Stretch := true;
Transparent := true;
end;
b := true;
end;

procedure timage1.MyOnClick(Sender: TObject);
begin
if b = true then
begin
self.Canvas.Brush.Color := clBlack;
end
else
begin
self.Canvas.Brush.Color := clred;
end;

image1.Hide;
self.Canvas.FillRect(Canvas.ClipRect);
image1.Show;

b := not b;
end;

end.
 К началу страницы 
+ Ответить 

Сообщений в этой теме
sheka   Компонент   17.11.2009 22:43
volvo   Свойство Owner тебе поможет.   17.11.2009 22:50
sheka   Свойство Owner тебе поможет. owner.visible?   17.11.2009 22:58
volvo   На самом деле лучше бы так сделать: type TCompon…   17.11.2009 23:23
sheka   это я с сайта списывал. Насколько я понял, то чт…   18.11.2009 0:55
volvo   Нет, мне не удалось добиться того, что ты хочешь (…   18.11.2009 3:35
sheka   Выложите пожалуйста свой компонент. не могу понять…   18.11.2009 5:36
volvo   Вот сам компонент: В основном приложении на форм…   18.11.2009 6:47
sheka   Спасибо, уже кое-что стало понятно,но еще вопросы …   18.11.2009 23:10
volvo   :wacko: Чего кто там не видит? Ты скриншоты показ…   18.11.2009 23:43
sheka   Вот смотрите: если на форме стоит только один Edit…   19.11.2009 1:58
volvo   Ну, так в чем проблема? Проверяй, что компонент ле…   19.11.2009 2:31
sheka   Ну, так в чем проблема? Вы меня не правильно пон…   19.11.2009 4:26
sheka   Я сделал то что хотел!!! procedure TMy…   19.11.2009 6:19
volvo   Нет, по-моему мы друг друга не понимаем... Какая п…   19.11.2009 6:27
sheka   Бррр... Так ты хочешь, чтобы твой метод Change был…   19.11.2009 22:34
volvo   Хелп читал? (Вот отсюда) А ты вызываешь напрямую…   19.11.2009 23:57
sheka   Я ничего не описывал. Не предупредила.   20.11.2009 0:36
sheka   Создается компонент, картинка. при нажатии на нее …   11.12.2009 4:26
volvo   Ты забыл добавить Parent-а создаваемой картинке. А…   11.12.2009 7:25
sheka   Покажите пожалуйста фрагмент кода, где добавляется…   16.12.2009 1:32
volvo   Вот так, например: unit Component2; interface us…   16.12.2009 2:29


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 4.05.2024 9:05
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name