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

Вниз

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

 
ZL   (2005-01-23 20:16) [0]

Подскажите, пожалуйста, как сделать так:
На форме чертим линию (х1,у1 – х2,у2), как написать надпись (1-2 символа) над линией по центру.


 
MakedoneZ ©   (2005-01-23 20:26) [1]

для вычисления координат центра линии вот ф-ла:
x:=(x1+x2)/2  y:=(y1+y2)/2,отсюда делай выводы :)


 
begin...end ©   (2005-01-23 20:31) [2]

А можно сформировать прямоугольник и вызвать DrawText с DT_CENTER.


 
KilkennyCat ©   (2005-01-23 20:43) [3]


> begin...end ©   (23.01.05 20:31) [2]

а кто говорил, что линия - горизонтальная? :)


 
KilkennyCat ©   (2005-01-23 20:44) [4]

TLogFont


 
MakedoneZ ©   (2005-01-23 21:03) [5]

В случе если он не горизонтальная,то Label может пройти поверх линии,в зависимости коэффициента наклона.


 
MakedoneZ ©   (2005-01-23 21:39) [6]

procedure MakeMark(x1,x2,y1,y2 : Integer; N,M: Byte; Mark: String);

begin
with MyForm.Canvas do
begin
 MoveTo(x1,y1);
 LineTo(x2,y2);
 TextOut(((x1+x2) div 2)-N,((y1+y2) div 2)+M,Mark);
end;

Здесь не при помощи Label,а графический вывод слова Hi;
Как ты понял x1,x2,y1,y2 - координаты линии.
А вот N,M зависят от шрифта(Canvas.Font.Size:=z),но если ты не менял размер то рекомендую N=4; M=4(Ведь ты сказал что не более 2 симвовлов,вообще надо бы учитывать ширину шрифта,но если не менял и 2 либо 1 символ,то N=4; M=4;);

В вычислении середины отрезка может быть погрешность,в случае если (x2+x1) нечетное (из-за div),но она очень мала.
Добавлю что в случае если линия не горизонтальна,слово может пройти по линии,и тут уже надо учитывать угловой коэффициент.


 
MakedoneZ ©   (2005-01-23 22:14) [7]

Извините забыл
end; для процедуры MakeMark.
Не судите строго :)


 
ZL   (2005-01-24 21:30) [8]

Просто супер! Большое спасибо!!!!


 
MakedoneZ ©   (2005-01-25 12:50) [9]

Всегда рад помочь! :)



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

Форум: "Основная";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.04 c
3-1105395316
Nata
2005-01-11 01:15
2005.02.06
dbgrid сортировка


9-1099130917
Wish
2004-10-30 14:08
2005.02.06
Сразу несколько вопросов по созданию игр.


1-1106565979
Mutniy
2005-01-24 14:26
2005.02.06
Почему в компоненте не находит ресурс ?


6-1100991818
Павел
2004-11-21 02:03
2005.02.06
Использование VPN


1-1106596469
MadGhost
2005-01-24 22:54
2005.02.06
TValueListEditor как вставить туда TComboBox ?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский