![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Хочу набросать на panel много прямоугольников с полями и двигать их мышкой.
Объявляю тип: Код:
type
TPost = class( TPanel)
LabelCode: TLabel;
LabelName: TLabel;
EditCode: TEdit;
EditName: TEdit;
procedure MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
Пишу процедуру:
procedure TPost.MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
frmMain.StatusBar.SimpleText:='aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
end;По клику создаю прямоугольник (он честно появляется на панели) Код:
TPost.Create(Self).Name := ('Post'+inttostr(nPanNumber) );Присваиваю ему top, left, и прочие свойства. Тыкаю мышкой - процедура не вызывается. Ставил чекпойнт в дебаггере - таки не вызывается. Что я делаю не так, подскажите, pls. MAD: Пользуемся тегами, или последуют санкции! Последний раз редактировалось M.A.D.M.A.N., 14.06.2013 в 16:24. |
|
#2
|
||||
|
||||
|
а созданому элементу своё событие MouseDown назначил?
|
|
#3
|
|||
|
|||
|
Код:
procedure MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); |
|
#4
|
||||
|
||||
|
Это объявление, а не назначение.
|
|
#5
|
|||
|
|||
|
А как правильно?
|
|
#6
|
||||
|
||||
|
Код:
blabla.onmousewheel := blabla; |
|
#7
|
|||
|
|||
|
Не объясните ли подробнее? Что вместо блабла и в какой раздел это писать?
|
|
#8
|
||||
|
||||
|
Код:
blabla.onmousewheel := blabla; Объект.onmousewheel:=твоя процедура только я не понял а зачем тебе движения колесика onmousewheel - Движения колесиком мышки на объекте |
|
#9
|
|||
|
|||
|
Это MADMAN написал про OnMouseWheel, наверное, для примера.
Но не объясните ли подробнее? Вот я создаю объект: Код:
TPost.Create(Self).Name := ('Post'+inttostr(nPostCounterMax) );
with TPost (FindComponent('Post' + IntToStr(nPostCounterMax))) do begin
Parent := self;
Tag:=nPostCounterMax;
Color :=clSilver;
Left := 20 + + nCellWidth + nCellHorInterval;
Top := nPostCounterMax* (nCellHeight + nCellVerInterval);
Visible:=true;
OnMouseDown:= TPost.OnMouseDown;
end;На такую конструкцию ругается. Где надо прописать правильную? |
|
#10
|
||||
|
||||
|
Не борзейте, это можно прочитать в любой книге по дельфи в разделе "свойства", дак нет же, нам лень заглянуть в раздел "http://delphisources.ru/forum/forumdisplay.php?f=54" и посмотреть какие книги рекомендуют по дельфям и прочесть по диагонали.
Да чего уж там, лень в гугл зайти. |