Форум сайта python.su
Здравствуйте,
Есть элемент управления
... self.change=wx.richtext.RichTextCtrl(panel,pos=(10,100),size=(480,250),style=wx.TE_MULTILINE) ...
Офлайн
Решил задачу, вот код:
... if not self.change.HasSelection(): return r = self.change.GetSelectionRange() fontData = wx.FontData() fontData.EnableEffects(True) attr = wx.richtext.RichTextAttr() attr.SetFlags(wx.TEXT_ATTR_FONT) if self.change.GetStyle(self.change.GetInsertionPoint(), attr): fontData.SetInitialFont(attr.GetFont()) #получаем стили текста dlg = wx.FontDialog(self, fontData) if dlg.ShowModal() == wx.ID_OK: fontData = dlg.GetFontData() fnt = fontData.GetChosenFont() colour = fontData.GetColour() #устанавливаем стили текста if fnt: attr.SetFlags(wx.TEXT_ATTR_FONT) attr.SetFont(fnt) attr.SetTextColour(colour) self.change.SetStyle(r, attr) dlg.Destroy() ...
Отредактировано dbalor (Март 6, 2019 05:36:30)
Офлайн