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

Вниз

Координатная плоскость   Найти похожие ветки 

 
$tranger ©   (2004-04-13 09:11) [0]

Господа, подскажите как мне реализовать в своей программе координатную плоскость. В принципе мне нужна сама сетка. Я пробовал чарез Shape, но 900 штук - это перебор. Может есть готоввый компонент или альтернативное решение?.. Спасибо


 
Думкин ©   (2004-04-13 12:18) [1]

А просто рисовать ее - пробовал?


 
WondeRu ©   (2004-04-13 12:29) [2]

на чем рисуешь-то?


 
$tranger ©   (2004-04-13 20:09) [3]

Я раскопировал на самой форме 900 штук квадратов - вот и все...

> Думкин ©   (13.04.04 12:18) [1]
что значит "просто рисовать"


 
panov ©   (2004-04-13 22:49) [4]

так прямыми линиями сетку рисуй...


 
Думкин ©   (2004-04-14 06:33) [5]

> $tranger ©   (13.04.04 20:09) [3]

Ну так просто - берешь и линуешь. Например обрабатывай WM_Paint.


 
тихий вовочка ©   (2004-04-14 07:15) [6]

У меня на работе плоскость из ячеек 256х64. Я рисую линиями
установив стиль пера в psDot. Очень красиво получается.


 
$tranger ©   (2004-04-14 20:20) [7]

Т.е. вы предлагаете в событии Paint поставить цикл с рисованием... Интересная идея, но не будет ли тормозить при запуске на слабых машинах?


 
Gero ©   (2004-04-14 20:46) [8]


> Интересная идея, но не будет ли тормозить при запуске на
> слабых машинах?

В любом случае 900 Shape будет тормозить НАМНОГО больше.


 
panov ©   (2004-04-14 21:24) [9]

>$tranger ©   (14.04.04 20:20) [7]

Т.е. вы предлагаете в событии Paint поставить цикл с рисованием... Интересная идея, но не будет ли тормозить при запуске на слабых машинах?

Прорисовка окон в Windows так и работает, пока не заметно, чтобы тормозило особо...


 
panov ©   (2004-04-14 21:34) [10]

procedure TForm1.FormPaint(Sender: TObject);
var
 x,y: Integer;
 REct: TRect;
begin

 GetClipBox(Canvas.Handle,Rect);

 Canvas.Pen.Style := psDot;

 x := 20;
 y := 20;

 while x<Rect.Right do
 begin
   canvas.MoveTo(x,0);
   Canvas.LineTo(x,Rect.Bottom);
   Inc(x,20);
 end;

 while y<Rect.Bottom do
 begin
   canvas.MoveTo(0,y);
   Canvas.LineTo(Rect.Right,y);
   Inc(y,20);
 end;


 
Gero ©   (2004-04-14 22:26) [11]


> Прорисовка окон в Windows так и работает, пока не заметно,
> чтобы тормозило особо...

Тормозит. Особенно в XP
:)


 
$tranger ©   (2004-04-15 15:02) [12]

Господа, всем большое спасибо - очень помогли, особенно
> panov ©   (14.04.04 21:34) [10]
. Заодно и научился работать с Canvas"ом :)



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

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

Наверх




Память: 0.49 MB
Время: 0.035 c
9-1078425571
Creep
2004-03-04 21:39
2004.06.27
Уменя спрайты крутятся в таймере и на разных компах разная скорос


14-1086808372
Феликс
2004-06-09 23:12
2004.06.27
Вопрос про Visual Basic и макрос


14-1086286974
Потеряв однажды ник
2004-06-03 22:22
2004.06.27
Сколько вам лет


1-1086767413
Tom
2004-06-09 11:50
2004.06.27
as TDBGrid


4-1084810455
kot_phg
2004-05-17 20:14
2004.06.27
Как мне узнать скрытые название любого *.exe файла и ее версию.