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

Вниз

Рисование на канве   Найти похожие ветки 

 
Пугливый Лыжник   (2004-05-23 07:29) [0]

Нид хэлп!
Нужно нарисовать ромб с возможностью заливки и вставки текста.
Я так пониманимаю,он рисуется с помощью проц.polygon,но у меня не получается задать массив точек.Это раз=))
Второе.Как задать начальную позицию для вывода на канву текста при помощи TextOut.
Если можно,приведите пример кода,вечер долбался,вроде правильно делал а ОНО ругается=))
з.ы.:нужно для компоненты


 
Serious Sam   (2004-05-23 11:33) [1]

Рисуешь ромб:
procedure TForm1.Button1Click (Sender: TObject)
var
  romb: array [1..4] of TPoint;
begin
    romb[1].x:=50;
    romb[1].y:=10;
    romb[2].x:=90;
    romb[2].y:=50;
    romb[3].x:=50;
    romb[3].y:=90;
    romb[4].x:=10;
    romb[4].y:=50;
    Form1.Canvas.Polygon(romb);
end;
тороплюсь... Вроде должно работать. Про текст напишу часа через два.


 
Serious Sam   (2004-05-23 11:40) [2]

Не знаю как ты пользуешься TextOut"ом, ведь его параметры x и y и есть координаты точек, откуда будет рисоваться текст (Form1.Canvas.TextOut(x,y,"текст"))


 
Пугливый Лыжник   (2004-05-23 21:48) [3]

За ромб спасибо , я просто клина поймал =)
А на счёт текста вся морковь в том,что он должен быть не константой,а появляться на канве при вводе в caption!!,
+ Как в TLabel выравниваться (слева,справа,по центру).


 
Algol   (2004-05-23 22:16) [4]


> + Как в TLabel выравниваться (слева,справа,по центру).


Так от лейбы свой компонент и наследуй ...А в паинте ставь прорисовку ромба.


 
Пугливый Лыжник   (2004-05-24 14:15) [5]

[quote]Так от лейбы свой компонент и наследуй ...[/quote]
не понял .в лабле слишком много констант мне нужно попроще
чтоб получалось


 
Пугливый Лыжник   (2004-05-24 14:15) [6]

[quote]Так от лейбы свой компонент и наследуй ...[/quote]
не понял .в лабле слишком много констант мне нужно попроще
чтоб получалось


 
Algol   (2004-05-24 16:38) [7]

Дак уж куда проще ...

TMyLabel = class(TLabel)
protected
procedure Paint();override;
end;

...
procedure TMyLabel.Paint();
begin
//здесь рисуем ромб
...
//а потом рисуем саму лейбу
inherited;
end;
...
(и не забываем установить Transparent = true)


 
Prohodil Mimo   (2004-05-24 16:59) [8]

Posmotri v ishodnikah kak label risujet, tak i sebe sdelaj.
stdctrls.pas
procedure TCustomLabel.Paint;



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

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

Наверх




Память: 0.48 MB
Время: 0.051 c
3-1084337455
TATIANA
2004-05-12 08:50
2004.06.06
Как распознать какой тип рисунка при загрузке из BLOB поля


1-1085241554
safo
2004-05-22 19:59
2004.06.06
строки


1-1085126699
ПрогерШу
2004-05-21 12:04
2004.06.06
В чем хранить картинки?


1-1085697995
NetKnight
2004-05-28 02:46
2004.06.06
Rave reports and calcilated fields


1-1085072138
Nikoss
2004-05-20 20:55
2004.06.06
Как узнать порядковый номер объекта в динам. массиве ...