Как узнать размеры текста в DirectDraw

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Tarantul
Бывалый
Бывалый
 
Сообщения: 235
Зарегистрирован: 13.12.2004 (Пн) 16:39
Откуда: IUnknown

Как узнать размеры текста в DirectDraw

Сообщение Tarantul » 09.01.2005 (Вс) 22:19

Мне надо узнать высоту и ширину будущего текста на экране перед вызовом процедуры DirectDrawSurface.DrawText, подобно тому, как это делается функциями TextHeight и TextWidth в PictureBox. :?: :?: :?:

GM
programador
programador
 
Сообщения: 1427
Зарегистрирован: 24.06.2003 (Вт) 15:56
Откуда: 194.67.52.100

Сообщение GM » 09.01.2005 (Вс) 23:45

Можна так:
1.Шрифт поверхности мы задаем такой же как форме, или наоборот
2.Измерения формы в пиксели
3.Юзаем TextWidth и TextHeight формы
Код: Выделить всё
Private Sub Form_Load()
Form1.ScaleMode = vbPixels
Call dds.SetFont(Form1.Font)
msgbox( form1.textwidth("Hello world!")) ' form1. написал для наглядности, можна просто textwidth
msgbox( form1.textheight("Hello world!"))
End Sub
الفيجوال بيسك الرابح

Tarantul
Бывалый
Бывалый
 
Сообщения: 235
Зарегистрирован: 13.12.2004 (Пн) 16:39
Откуда: IUnknown

Сообщение Tarantul » 10.01.2005 (Пн) 10:21

А ни будет ли такой метод слишком медленным :?:

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 10.01.2005 (Пн) 10:54

gettextextentpoint32
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Tarantul
Бывалый
Бывалый
 
Сообщения: 235
Зарегистрирован: 13.12.2004 (Пн) 16:39
Откуда: IUnknown

Сообщение Tarantul » 10.01.2005 (Пн) 20:11

Понял, спасибо :)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 6

    TopList