Вниз
Скачать: CL | DM;

Создание объектов в runtime.   Найти похожие ветки 

← →
mmx1   (2006-11-06 17:45) [0]

Есть один элемент TPanel, на котором требуется создать несколько других, -- на этой панели сформировать некую матрицу из других панелей.
Ну что-то вроде вот этого:

____________
|__|__|__|__|
|__|__|__|__|
|__|__|__|__|



Мой вопрос не про само создание множества внутренних панелей; я не понимаю, как мне контроллировать положения этих элементов, как выстраивать ровную матрицу. Учитывая, что ширина и длина главного TPanel - константа, -- т.е. он может вмещать определенное кол-во внутренних TPanel. Может что подскажете?


← →
Ketmar ©   (2006-11-06 17:46) [1]

а что, использовать всякие grid"ы религия запрещает?


← →
Desdechado ©   (2006-11-06 17:47) [2]

> я не понимаю, как мне контроллировать положения этих элементов
Panel1.Top
Panel1.Left
Panel1.Width
Panel1.Height
делить нацело свою константу думаю сумеешь


← →
RASkov   (2006-11-06 20:52) [3]

procedure TForm1.Button1Click(Sender: TObject);
var Pn: TPanel; W, H, N: Integer;
begin
 W:=(Panel1.Width div 4);
 H:=(Panel1.Height div 3);
 for N:=0 to 11 do begin
  Pn:=TPanel.Create(Panel1);
  Pn.Parent:=Panel1;
  Pn.Width:=W; Pn.Height:=H;
  Pn.Left:=((N div 3)*W);
  Pn.Top:=(N mod 3)*H;
  Pn.Caption:="Iaiaeu ?"+IntToStr(N+1);
  Pn.Show;
 end;
end;


← →
Anatoly Podgoretsky ©   (2006-11-06 23:26) [4]

> mmx1  (06.11.2006 17:45:00)  [0]

> Учитывая, что ширина и длина главного TPanel константа

Раз константа, то задаче не имеет решения, если M mod N <> 0



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.026 c
2-1162912485
m-kirill-2003
2006-11-07 18:14
2006.11.26
ADOquery1


15-1162569581
ProgRAMmer Dimonych
2006-11-03 18:59
2006.11.26
Что случилось с otvet.mail.ru?


15-1162969573
salexn
2006-11-08 10:06
2006.11.26
Компонент типа SynEdit


8-1145034849
Asics777
2006-04-14 21:14
2006.11.26
AV v.1.5 - Видео проигрыватель вскоре будет как Light Alloy !


15-1162644159
хххх
2006-11-04 15:42
2006.11.26
Microsoft Office




   Наверх