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

Вниз

Работа с графикой   Найти похожие ветки 

 
Expl   (2004-11-03 20:06) [0]

Объясните пжлста ламеру в чем причина: суть в том, что при нажатии на  кнопку на PaintBox"e выводится таблица 5*5 с числами в клетках. Когда прорисовываю просто таблицу, то она сразу отображается, а когда после ее прорисовки ставлю прорисовку чисел, то при нажатии таблица появляется и мгновенно исчезает. В чем тут сёка?


 
Mihey_temporary ©   (2004-11-03 20:09) [1]

Покажи код.


 
Expl   (2004-11-03 20:13) [2]

procedure Show_Shulte(P: TPaintBox);
var x,y:integer;
   k,i,j:integer;
begin
x:=((p.Width div 2)-155);
y:=((p.Height div 2)-155);
P.Canvas.FillRect(P.Canvas.ClipRect);
P.Canvas.Brush.Color := ClBtnFace;
p.Canvas.Pen.Color:=clBlack;
p.Canvas.Pen.Style:=psSolid;
P.Canvas.Brush.Style:=bsSolid;
For i:=0 to 4 do
  For j:=0 to 4 do
     P.Canvas.Rectangle(x+i*64,y+j*64,x+(i+1)*65,y+(j+1)*65);
p.Canvas.Pen.Color:=clGreen;
P.Canvas.Brush.Color := clGreen;
P.Canvas.Brush.Style:=bsSolid;
P.Canvas.Ellipse(x+128+(32-8),y+128+(32-8),x+128+(32+8),y+128+(32+8));
//вывод текста
P.Canvas.Brush.Color := ClBtnFace;
p.Font.Name:="Arial";
p.Font.Size:=20;
for i:=0 to 4 do
  for j:=0 to 4 do
     if (i<>2) or (j<>2) then
           begin
           k:=random(24)+1;
           if k<10 then
               p.Canvas.TextOut(x+23+i*64,y+18+j*64,IntToStr(k))
           else p.Canvas.TextOut(x+16+i*64,y+18+j*64,IntToStr(k));
           end;
end;


 
Expl   (2004-11-03 20:29) [3]

Причем, я тут посмотрел, глючить начинает если в процедуре есть вот эти 2 строчки:
p.Font.Name:="Arial";
p.Font.Size:=20;
А без них и с выводом текста работает, правда, шрифт не тот.


 
Expl   (2004-11-03 20:31) [4]

Я понял! Надо было писать не
p.Font.Name:="Arial";
p.Font.Size:=20;
а
p.Canvas.Font.Name:="Arial";
p.Canvas.Font.Size:=20;


 
Mihey_temporary ©   (2004-11-03 21:04) [5]

Ну вот и слава богу.



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

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

Наверх




Память: 0.47 MB
Время: 0.055 c
4-1104127474
iNBox
2004-12-27 09:04
2005.02.20
OEP


1-1107410801
msgipss
2005-02-03 09:06
2005.02.20
использование статического метода


9-1099337514
Colt1978
2004-11-01 22:31
2005.02.20
Задание пути объекту.... (GLScene)


14-1107183401
Cosinus
2005-01-31 17:56
2005.02.20
Подскажите программу для разводки плат...


11-1092132408
DmiSb
2004-08-10 14:06
2005.02.20
LoginDialog ?