Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: CL | DM;

Вниз

Создание компонентов на форме в запущенном приложении   Найти похожие ветки 

 
alex007 ©   (2006-06-04 20:10) [0]

Я хочу сделать программу которая бы создавала различные компоненты по щелчку пользователя на форме в определённом месте. Мой вопрос: как сделать чтобы эти компоненты не "накладывались" друг на друга или же меняли свое местоположение после щелчка?

...
var
 i,k,j:integer;
 Form1: TForm1;
 Checkboxes:array[1..500] of TCheckbox;
 obj1: string;
 p:tpoint;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
i:=1;
end;

procedure TForm1.Checkbox1Click(Sender: TObject);
begin
click_form("checkbox");
end;

procedure TForm1.click_form(obj: string);
begin
obj1:=obj;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
panel1.Width:=form1.Width-10;
panel1.Width:=form1.height-10;
panel1.Left:=5;
panel1.Top:=5;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
panel1.Width:=form1.Width-20;
panel1.height:=form1.height-56;
panel1.Left:=5;
panel1.Top:=5;
end;

procedure TForm1.Timer2Timer(Sender: TObject);
begin
panel1.Width:=form1.Width-20;
panel1.height:=form1.height-56;
panel1.Left:=5;
panel1.Top:=5;
end;

procedure TForm1.Panel1Click(Sender: TObject);
begin
getcursorpos(p);
if obj1="checkbox" then begin
checkboxes[i]:=TCheckbox.create(panel1);
checkboxes[i].name:="Checkbox"+inttostr(i);
checkboxes[i].Parent:=panel1;
checkboxes[i].Caption:="Ваш текст";
checkboxes[i].left:=p.x-form1.left-4;
checkboxes[i].top:=p.y-form1.top-45;
end;
...
I:=I+1;
end;

end;
end.



 
Kolan ©   (2006-06-04 21:17) [1]


> Мой вопрос: как сделать чтобы эти компоненты не "накладывались"
> друг на друга или же меняли свое местоположение после щелчка?
>
>

Мой ответ - правильно выставляй значения Top и Left.



Страницы: 1 вся ветка

Текущий архив: 2006.06.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.037 c
8-1137837125
deamon_t
2006-01-21 12:52
2006.06.25
Алгоритм сравнения двух TBitmap


3-1146632130
thvfrjd
2006-05-03 08:55
2006.06.25
странный результат выполнения запроса


2-1149215454
Василий
2006-06-02 06:30
2006.06.25
Копирование изображения


4-1143356476
scolopax
2006-03-26 11:01
2006.06.25
Блокирование Desktop


3-1146241531
Galiaf
2006-04-28 20:25
2006.06.25
Переместить указатель.