Добрый день эксперты! Кто знает как поменять шрифт меню формы во время выполнения ? Проблема вот в чем. Хочу создать многоязычную программу. И надо динамически менять шрифты в меню формы во время выполнения в зависимости от выбранного языка. Способ динамически менять пункты меню во время выполнения я нашел в интернете. Однако, в некоторых языках, в частности в казахском, есть дополнительные символы. И хотя в Word - е эти символы отображаются корректно, в среде разработке и во время выполнения эти символы отображаются не правильно. Кто подскажет как обойти эту проблему. Решение должно существовать. Ведь подобных алфавитов множество от армянского до китайского, где множество дополнительных символов.
Скажите пожалуйста как в сеансе программы на VB 6.0 узнать имя текущего пользователя и как можно прописать путь к папке с Windows. Я пробовал %SystemRoot% не проходит. Заранее спасибо.
Приветствую Вас, Евгений! Запустить в цикле debug.print Environ(i), где i=1...20 (примерно так, этого должно хватить), далее там находиться строка, что-то вроде WindowsDir. Потом уже в готовой программе вставляешь в Environ() эту самую строку, например, так Environ(WindowsDir) Ответ отправлен: 22.09.2004, 21:53 Отправитель: Puma Отвечает Василевский Александр
Приветствую Вас, Евгений! 1. Имя текущего пользователя можно узнать при помощи функции GetUserName WinAPI. Применительно к VB: Объявление Declare Function GetUserName& Lib "ADVAPI32.DLL" Alias _ "GetUserNameA" ( ByVal lpBuffer As String, nSize As Long ) Описание Функция получает имя текущего пользователя Аргументы lpBuffer String - строковый буфер длинны nSize. Заполняется именем пользователя nSize Long - длинна буфера nSize. При выходе из функции содержит количество символов, записанных в lpBuffer Возвращаемое значение Long - TRUE (ненулевое значение) в случае успеха, ноль при неудаче. Устанавливает информацию GetLastError. Пример Dim s$, cnt&, dl& cnt& = 199 s$ = String$( 200, 0 ) dl& = GetUserName( s$, cnt ) Debug.Print Left$( s$, cnt );
cnt 2. Название папки Windows можно получить при помощи функции GetWindowsDirectory W
inAPI. Применительно к VB: Объявление Declare Function GetWindowsDirectory& Lib "Kernel32" Alias _ "GetWindowsDirectoryA" ( ByVal lpBuffer As String, ByVal nSize As long ) Описание Функция получает полный путь к каталогу Windows. В этом каталоге хранятся файлы основных приложений Windows и файлы инициализации. Аргументы lpBuffer String - строковый буфер, заполняемый полным именем каталога Windows. В путь не включается завершающий символ '\', если каталог не является корневым. nSize Long - максимальная длинна строки lpBuffer Возвращаемое значение Long - длинна скопированной строки в буфер. Необходимая длинна буфера, если путь не помещается в lpBuffer. Ноль в случае ошибки. Устанавливает информацию GetLastError.
Ответ отправлен: 24.09.2004, 14:00 Отправитель: Василевский Александр
Форма отправки вопроса
Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+
или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.