2013-11-26 5 views
0

Я ищу виджет под wx, который похож на TextCtrl с возможностями показывать богатый контент под Linux и Mac (например, разные цвета текста в разных строках). Я знаю, что wx.TextCtrl с стилем wx.TE_RICH (или wx.RichTextCtrl) работает только под Windows, а не под Mac и Linux.Изменить цвет текста в wx.TextCtrl под Mac или Linux

Я также проверил stc.StyledTextCtrl, который, кажется, имеет желаемую возможность, учитывая схему для раскраски, поэтому он в основном используется для подсветки синтаксиса. Поэтому я сомневаюсь, что он работает.

Итак, мне было интересно, если есть текстовое поле виджета TB для Wx с API, как:

TB.AppendText("Hello, this is Black", wx.BLACK) 
TB.AppendText(" and this is Blue", wx.BLUE) 

Любая помощь приветствуется.

ответ

0

Ум, что дало вам эту идею? Богатый текстовый флаг для wx.TextCtrl отлично работает на Linux для меня. Я использую wxPython 2.8.12.0. Возможно, вам придется использовать wx.TE_RICH2. Я тестировал с помощью демонстрационной версии wxPython, чтобы убедиться, что она работает, и это так.

Элемент управления RichText в wx.richtext также работает так же, как и FancyText и StyleTextCtrls. Я тестирую CentOS 6.

+0

Спасибо за ответ. В описании для wx.TextCtrl (http://docs.wxwidgets.org/2.8/wx_wxtextctrl.html) упоминается, что стили wx.TE_RICH и wx.TE_RICH2 игнорируются под платформами, отличными от Win32. Я также пробовал использовать wx.TE_RICH и wx.TE_RICH2 в моем коде, который работает под Mac, но тексты не были покрашены по-разному. – shahins

+0

stc.StyledTextCtrl работает под Mac, но, похоже, требуется схема для раскраски, и у нее нет API для цветного текста, поскольку он добавляется. – shahins

+0

Вы посмотрели демонстрацию wxPython, чтобы узнать, работает ли какой-либо из этих виджетов на Mac? У меня нет Mac для тестирования. –