Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Шрифты меню по умолчанию / 9 сообщений из 9, страница 1 из 1
18.07.2011, 23:32
    #37356811
Igornew
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Можно ли в начале программы задать шрифт всех создаваемых в ней меню, контекстного меню, что бы не описывать их каждый раз везде где идёт программное создание меню.
Необходимость возникла, по причине , что на некоторых компах контекстные меню отображаются абракодаброй, в то время как основное - нормально.
...
Рейтинг: 0 / 0
19.07.2011, 00:10
    #37356835
Dag
Dag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Можно попытаться использовать директивы препроцессора .
...
Рейтинг: 0 / 0
19.07.2011, 07:39
    #37356927
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
IgornewНеобходимость возникла, по причине , что на некоторых компах контекстные меню отображаются абракодаброй, в то время как основное - нормально.
Есть такая болезнь у фокса. Некоторые шрифты фокс "не переваривает". Проблема из-за настройки стиля рабочего стола виндовса.
Лечится выбором стандартного стиля рабочего стола.
...
Рейтинг: 0 / 0
19.07.2011, 10:33
    #37357142
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Dima TIgornewНеобходимость возникла, по причине , что на некоторых компах контекстные меню отображаются абракодаброй, в то время как основное - нормально.
Есть такая болезнь у фокса. Некоторые шрифты фокс "не переваривает".Не только у фокса. И фокс шрифтами в данном случае не занимается и потому ему даже переваривать нечего.
Фокс пользуется родной виндовой системой меню, которую уже мало кто использует, перейдя на текстовые тулбары. Так вот эта система и пакостит на экзотических шрифтах. Но способ лечения правильный, изменить настройки рабочего стола или по крайней мере шрифт меню в этих настройках.
...
Рейтинг: 0 / 0
19.07.2011, 10:50
    #37357174
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Sergey SizovDima Tпропущено...

Есть такая болезнь у фокса. Некоторые шрифты фокс "не переваривает".Не только у фокса. И фокс шрифтами в данном случае не занимается и потому ему даже переваривать нечего.
Фокс пользуется родной виндовой системой меню, которую уже мало кто использует, перейдя на текстовые тулбары. Так вот эта система и пакостит на экзотических шрифтах.
Считаю что это какая-то недоработка внутри фокса. На том же компе находится куча прог у которых с меню все в порядке, т.е. набор русских букв все-таки присутствует.
Как понимаю устройство шрифтов - внутри одного шрифта есть различные наборы изображений одних и тех же кодов символов, в кириллическом наборе русские буквы, в латинском и пр. на этом месте кракозябры. Подозреваю что фокс берет первый попавшийся, кириллица не всегда первой попадается.
...
Рейтинг: 0 / 0
19.07.2011, 11:58
    #37357350
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Dima TSergey Sizovпропущено...
Не только у фокса. И фокс шрифтами в данном случае не занимается и потому ему даже переваривать нечего.
Фокс пользуется родной виндовой системой меню, которую уже мало кто использует, перейдя на текстовые тулбары. Так вот эта система и пакостит на экзотических шрифтах.
Считаю что это какая-то недоработка внутри фокса. На том же компе находится куча прог у которых с меню все в порядке, т.е. набор русских букв все-таки присутствует.Дима, ты можешь понять одну простую вещь - в разных прогах меню делается разными способами? И то , что у других меню рисуется хорошо никоим обрахзом не относится к фоксу. Он использует другой механизм. В котором он сам никак не участвует. Он просто дает указание винде, а не какому ствоему внутреннему механизму отображения меню, сделать меню из вот такого вот набра данных и все. Как это будет отображаться решает не фокс, а винда. Это понятно или нет?
...
Рейтинг: 0 / 0
19.07.2011, 12:39
    #37357474
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Sergey SizovDima Tпропущено...

Считаю что это какая-то недоработка внутри фокса. На том же компе находится куча прог у которых с меню все в порядке, т.е. набор русских букв все-таки присутствует.Дима, ты можешь понять одну простую вещь - в разных прогах меню делается разными способами?
Все проги используют функции WinAPI для управления меню.

Согласен что WinAPI можно по-разному использовать, о чем я и говорю. Т.к. фокс позволяет изнутри менять шрифт меню, следовательно и для построения меню он криво использует WinAPI в части выбора языка шрифта.

Sergey SizovИ то , что у других меню рисуется хорошо никоим обрахзом не относится к фоксу. Он использует другой механизм. В котором он сам никак не участвует. Он просто дает указание винде, а не какому ствоему внутреннему механизму отображения меню, сделать меню из вот такого вот набра данных и все. Как это будет отображаться решает не фокс, а винда. Это понятно или нет?
Сам-то понял чего написал? Фокс ни при чем, виноват виндовс, в том что фокс неправильно ему задачу поставил

Если есть опыт программирования на голом WinAPI - можно продолжить обсуждение в форуме по С++, для них эта тема ближе.
...
Рейтинг: 0 / 0
19.07.2011, 15:35
    #37357961
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Dima TSergey Sizovпропущено...
Дима, ты можешь понять одну простую вещь - в разных прогах меню делается разными способами?
Все проги используют функции WinAPI для управления меню.Упертый , однако... :)
Есть разные меню. Подавляющее большиство соверменных программ использую свое собственно, саморисованное, самодельное и т.д. меню или что-то на него похожее.
А вот фокс использует всроенное в винду, системное, еще со времен 3.0 ресурсное меню. Которое рисует сам винда.
Да, в обоих случайх используетсмя WINAPI, только разные функции.

Согласен что WinAPI можно по-разному использовать, о чем я и говорю. Т.к. фокс позволяет изнутри менять шрифт меню, Фокс позволяет менять шрифт подменю, а не основной линейки ибо эту линейку как раз сама винда и рисует.следовательно и для построения меню он криво использует WinAPI в части выбора языка шрифта.А вот и нифига. WinApi он использует правильно, только не то, про которое Вы думаете.
Sergey SizovИ то , что у других меню рисуется хорошо никоим обрахзом не относится к фоксу. Он использует другой механизм. В котором он сам никак не участвует. Он просто дает указание винде, а не какому ствоему внутреннему механизму отображения меню, сделать меню из вот такого вот набра данных и все. Как это будет отображаться решает не фокс, а винда. Это понятно или нет?
Сам-то понял чего написал? Фокс ни при чем, виноват виндовс, в том что фокс неправильно ему задачу поставил Я то понял, в вот некоторые видимо так и непоняли о чем я тут твержу. Фокс задачу поставил правильно, и винда свою задачу поняла правильно, просто использованные функции винды старые и не совсем доработанные под юникод в силу редкого использования. Сейчас используют совершенно другое.
Если есть опыт программирования на голом WinAPI - можно продолжить обсуждение в форуме по С++, для них эта тема ближе.Есть, но смысла никакого. В качестве наводки - меню как ресурс приложения.
...
Рейтинг: 0 / 0
19.07.2011, 16:12
    #37358053
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Шрифты меню по умолчанию
Sergey SizovЕсть разные меню. Подавляющее большиство соверменных программ использую свое собственно, саморисованное, самодельное и т.д. меню или что-то на него похожее.
Кроме прог оформленных типа офиса 2010 есть еще блокнот, калькулятор, паинт и т.п. (в них все нормально с меню когда фокс глючит)

Sergey SizovА вот фокс использует всроенное в винду, системное, еще со времен 3.0 ресурсное меню. Которое рисует сам винда.
Ресурсы-то каким боком тут прицепились? В ресурсы EXE можно вставить статичное меню. Если меню создается в процессе работы приложения, то его никак в ресурсы не сохранишь. Оно программно генерится во время работы. Примерно так

Sergey SizovФокс позволяет менять шрифт подменю, а не основной линейки ибо эту линейку как раз сама винда и рисует.
Ты этот глюк давно сам наблюдал? Там именно так и происходит - линейка по-русски, а в подменю кракозябры.
Я так и писал - фокс выбирает шрифт и язык шрифта даже если шрифт явно не задан в коде, и выбирает не тот который надо.

Sergey Sizovпросто использованные функции винды старые и не совсем доработанные под юникод в силу редкого использования
Был бы юникод - проблемы бы не было. Фокс ANSI-версии вызовов WinAPI использует.
Возьми утилиту depend (из 6-й в.студии) и открой в ней VFP9.EXE, она показывает какие WinAPI функции используются приложением.
Там есть: InsertMenuA, InsertMenuItemA, а вот юникодные аналогов нет: InsertMenuW, InsertMenuItemW, т.е. фокс их не использует.

PS Предлагаю сворачивать эту полемику, то что глюк есть - наши мнения совпадают, то что лечить можно настройкой рабочего стола - тоже совпадают. А в чем его причина - это не особо важно, исправить его все равно не сможем, разве что понимать причины для общего развития.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Шрифты меню по умолчанию / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]