Форум программистов, компьютерный форум, киберфорум
Наши страницы
Python: GUI, графика
Войти
Регистрация
Восстановить пароль
 
ioprst
387 / 265 / 162
Регистрация: 12.03.2018
Сообщений: 992
1

Wxpython. TextCtrl. Неверное отображение шрифта

13.07.2018, 14:18. Просмотров 434. Ответов 4
Метки нет (Все метки)

Привет. Если диалог, на котором расположен TextCtrl. Проблема в следующем: одним из входных параметров конструктора TextCtrl является параметр style. Есть стили wx.TE_RICH, wx.TE_RICH2, которые позволяют изменять цвет шрифта, выделять весь текст с помощью ctrl+a и т.д., но при использовании данного стиля неверно отображаются шрифты (см. рис).
Шрифт обновляю следующим образом, если изменилось значение comboBox'а "шрифт" или "размер шрифта":
Python
1
2
3
4
5
6
7
8
9
10
def ChangedFont(self, event):
    """
    Обработка события при изменении шрифта или размера шрифта
    :param event:
    :return:
    """
    face = self.m_comboBox_font_family.GetStringSelection()
    sizeFont = int(self.m_comboBox_font_size.GetStringSelection())
    font = wx.Font(sizeFont, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL, False, face)
    self.m_textCtrl_text.SetFont(font)
Можно как-то исправить?
0
Миниатюры
Wxpython. TextCtrl. Неверное отображение шрифта  
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.07.2018, 14:18
Ответы с готовыми решениями:

Wxpython. Изменить цвет шрифта в TextCtrl
Подскажите как изменить цвет шрифта текст в объекте TextCtrl. Текст: self.m_textCtrl_text =...

Wxpython. Растянуть wx.TextCtrl
Привет, подскажите, пожалуйста, как растянуть wx.TextCtrl на все окно. В коде это переменные...

Wxpython. TextCtrl. Определить размер текста в пикселях
Привет. Есть объект self.m_textCtrl_text.GetLineText класса TextCtrl, хочу получить размер...

Wxpython. TextCtrl. получить информацию о выделенном тексте
Есть объект TextCtrl self.m_textCtrl_text = wx.TextCtrl(self.panel, wx.ID_ANY, self.text,...

wx.TextCtrl, вытащить переменные
import wx import unit_database class frame_pass(wx.Frame): def __init__(self): ...

4
ТабуретY
1158 / 801 / 453
Регистрация: 05.12.2013
Сообщений: 2,495
13.07.2018, 17:28 2
Не удается получить такой эффект, но выглядит так, что текст получает шрифт Trebuchet MS, а он в комбобоксе сразу после Times New Roman, может опечатка где-то вкралась?
0
ioprst
387 / 265 / 162
Регистрация: 12.03.2018
Сообщений: 992
15.07.2018, 09:56  [ТС] 3
ТабуретY, шрифт точно TNR, т.к. если крутить комбобокс большинство шрифтов отображаются как на левом снимке. Этот текст я добавляю на svg, туда добавляется нормальный TNR. Затем я могу его открыть для редактирования и в TextCtl будет текст с шрифтом TNR, но стоит внести любое изменение и шрифт слетает.
0
ТабуретY
1158 / 801 / 453
Регистрация: 05.12.2013
Сообщений: 2,495
15.07.2018, 14:35 4
Тогда можно привязать функцию смены шрифта в __init__, так

Python
1
self.m_textCtrl_text.Bind(wx.EVT_TEXT, self.ChangedFont)
и тогда шрифт одинаковый будет
0
ioprst
387 / 265 / 162
Регистрация: 12.03.2018
Сообщений: 992
16.07.2018, 11:25  [ТС] 5
ТабуретY, неа, не помогает. Видимо проблема все же в wx.TE_RICH на винде. Придется чем-то пока что жертвовать (шрифтом).

Добавлено через 1 час 41 минуту
Есть замечание: Если нужный шрифт не существует, будет выбрано ближайшее совпадение. В Windows используются только масштабируемые шрифты TrueType.
Но я не думаю, что TNR не существует. Я беру шрифты из wx:
Python
1
2
3
4
e = wx.FontEnumerator()
e.EnumerateFacenames()
elist = e.GetFacenames()
elist.sort()
0
16.07.2018, 11:25
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.07.2018, 11:25

Dungeon Siege II: неверное отображение шрифта
Здраствуйте. Такая проблемма: некоторые шрифты в Dungeon Siege II установленной на Windows 7 sp1...

Неверное отображение русского шрифта в 4x4 Evolution
всем привет:)Проблема состоит в том что установила русификатор, но вместо русских букв отображаются...

Неверное отображение шрифта при просмотре в браузере
Почему когда я вывожу код в браузер мне пишутся разные знаки, вот такие---Основная...


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

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

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