Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Delta
1

Нужно изменять размер шрифта в ActiveX в зависимости от размера самого ActiveX

11.01.2008, 10:51. Просмотров 889. Ответов 2
Метки нет (Все метки)

Уважаемые,

обратите пожалуйста внимание на вчерашний постинг под сабжем 'ActiveX - динамич. изменение шрифта и DragDrop. Помогите, очень нужно!'.
Я, наверно, тупые вопросы задаю, что же делать, ну простите чайника. Очень нужно изменять размер шрифта в ActiveX в зависимости от размера самого ActiveX (событие Resize).
Изменять размер шрифта пропорционально изменению размера ActiveX не совсем корректно - размер текста менятеся непропорционально и либо не влезает в текстовое поле, либо слишком короткий. Мне кажется, нужно определять фактические размеры текста в twips и подгонять под размеры ActiveX. Кроме того, нужно динамически определять число колонок в ListBox. Только как определить фактические размеры текста в twips?

И еще: где можно посмотреть примеры использования API-функций GetCharWidth, GetCharWidth32 и т.п. (в MSDN уже был, но не нашел)?
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.01.2008, 10:51
Ответы с готовыми решениями:

ActiveX и VB, получение значения из ActiveX
Написал на VB ActiveX компонент. Использую его на Web странице Function OnSupLoad() Dim...

Изменить поведение ActiveX-компонента в зависимости от нажатия кнопок
Нужно переделать под ActiveX и еще проблема c OptionButton

Нужно с клиентской машины прочитать данные (свойства) ActiveX
На сервере есть экзэшник и ActiveX exe, экзэшник записывает данные в свойства ActiveX(а). Мне нужно...

Нужно связать элемент activex - календарь с данными базы данных
Если не трудно, помогите советом или делом. Делаю базу данных, но не могу, хоть плачь, связать...

ActiveX
Private Sub Command1_Click() On Error GoTo FontError 'CommonDialog1.Flags = 1...

2
YURA
13.01.2008, 09:57 2
>>>в MSDN уже был, но не нашел
Однако, ищите дальше(Можете еще Appleman'а почитать - где-то здесь рекламируют(Выбери и купи-380р.(Хотя где-то я его на Download виде(по аглицки, правда(да и давно это было)))))

Обратите внимание на испольозвание методов ScaleX и ScaleY(например, их реализует объект Form)
Но размер шрифта более связан с высотой его символов, выраженной в точках(Point), а ширину(причем расширенную) символа действительно можно определить посредством GetCharWidth32(для моноширинных шрифтов это даже поможет).

Declare Function GetCharWidth& Lib 'gdi32' Alias 'GetCharWidthA' (ByVal hDC As_
Long, ByVal iFirstChar As Long, ByVal iLastChar As Long, lpBuffer As Long)
Declare Function GetCharWidth32& Lib 'gdi32' Alias 'GetCharWidth32A' (ByVal hdc_
As Long, ByVal iFirstChar As Long, ByVal iLastChar As Long, lpBuffer As Long)
Declare Function GetCharWidthFloat& Lib 'gdi32' Alias 'GetCharWidthFloatA'_
(ByVal hdc As Long, ByVal iFirstChar As Long, ByVal iLastChar As Long, pxBuffer As Single)

P.S.
мне и самому интересно, все ли скобки я закрыл...
Delta
13.01.2008, 10:40 3
За пример спасибо, книгу поищу. А можно пример использования функции (кусок кода)?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.01.2008, 10:40

ActiveX Control
Ребят,подскажите если не кодом то хоть где конкретно можно найти информацию. Необходимо:...

ActiveX события
Всем доброго времени суток. Сразу перейду к вопросу - ребят, подскажите пожалуйста, как...

ActiveX ОБ VB Й HTML
еУФШ ДЧБ ЖТЕКНБ, МЕЧЩК Й РТБЧЩК. ч МЕЧПН НЕОА УПЪДБООБС ОБ VB Ч ЧЙДЕ ActiveX. лБЛ РТЙ ЧЩВПТЕ Ч...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru