Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];

Вниз

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

 
Пугливый Лыжник   (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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.048 c
3-1084869152
It
2004-05-18 12:32
2004.06.06
Редактирование наборов данных в БД через Internet Explorer


4-1083093803
Torin
2004-04-27 23:23
2004.06.06
вызов API


3-1084840121
Lego82
2004-05-18 04:28
2004.06.06
Как перенести таблицу StringGrid в БД Paradox


14-1084905650
DeadMeat
2004-05-18 22:40
2004.06.06
Matrix


1-1085140488
yozhik
2004-05-21 15:54
2004.06.06
Запрет вставки из буфера в TEdit





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский