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

Вниз

paintBox   Найти похожие ветки 

 
AAAA   (2004-11-15 22:03) [0]

Помогите, люди добрые!!! Есть PaintBox в нём надо разместить некоторое число графических элементов прямоугольной формы (размеры их много меньше размеров PaintBox), но таким образом чтоб они не накладывались друг на друга, как это сделать????


 
Defunct ©   (2004-11-16 02:55) [1]

пример: прямоугольники выстроены по диагонали PaintBox

procedure TForm1.PaintBox1Paint(Sender: TObject);
var
   W : Integer;
   H : Integer;
   I : Integer;
begin
 with TPaintBox(Sender) do
 begin
   W := Width div 10;
   H := Height div 10;
   with Canvas do
   begin
     Pen.Color := clAqua;
     Brush.Color := $686050;
     Rectangle(0,0, Width, Height);
     Brush.Color := clRed;
     for i := 0 to 9 do Rectangle( i*W, i*h, (i+1)*W, (i+1)*h )
   end
 end
end;


 
jack128 ©   (2004-11-16 04:34) [2]

AAAA   (15.11.04 22:03)
Это ты по второму заходу, да??  Несколько дней назад же уже задавал этот вопрос..


 
KADAN ©   (2004-11-16 08:00) [3]

уточни:
некоторое число - насколько оно некоторое (от двух до трех или от нуля до миллиона)?
всегда ли эти элементы можно расположить на паинтбоксе (конкретно, если уже расположены n-1 элементов, есть ли гарантия, что n-й элемент тоже поместится?)

а вообще, если задача не сводится к тому, чтоб как-то оптимизировать расположение этих элементов, то просто каждый следующий проверять, не наложился ли он на предыдущие.



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
1-1100338954
Balkon
2004-11-13 12:42
2004.11.28
Проблема с посылкой сообщения потоку.


14-1099310768
DeMoN-777
2004-11-01 15:06
2004.11.28
Wireless


1-1100258492
Frozzen
2004-11-12 14:21
2004.11.28
Поскажите как очистить Canvas?


14-1099242760
DillerXX
2004-10-31 20:12
2004.11.28
У меня сгорел винт :(((((((


1-1100522855
PavelR
2004-11-15 15:47
2004.11.28
Английский формат даты в русский