#c #wxwidgets #wxstyledtextctrl
#c #wxwidgets #wxstyledtextctrl
Вопрос:
wxStyledTextCtrl очень хорош, но не полностью документирован.. кто-нибудь знает, как выровнять текст по правому краю?
// To create one
this->STYLED_TEXT = new wxStyledTextCtrl(PANEL, wxID_ANY, wxDefaultPosition, wxSize(500, 500));
// To set it RTL
STYLED_TEXT->SetLayoutDirection(wxLayout_RightToLeft);
Вопрос.. пожалуйста, как выровнять текст по правому краю?
Это не сработало!
this->STYLED_TEXT = new wxStyledTextCtrl(PANEL, wxID_ANY, wxDefaultPosition, wxSize(500, 500), wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL | wxRIGHT);
Заранее благодарю
Ответ №1:
Это невозможно сделать. wxStyledTextCtrl — это оболочка для текстового редактора Scintilla. Это действительно предназначено для написания на языках исходного кода, а не на естественных человеческих языках. Как они заявляют на своем сайте:
Scintilla должным образом не поддерживает языки справа налево, такие как арабский и иврит. Хотя текст на этих языках может выглядеть корректно, с этим текстом невозможно взаимодействовать, как обычно с другими компонентами редактирования.
Возможно, вместо этого мог бы работать wxRichTextCtrl.
Комментарии:
1. Спасибо, New Pagodi, да, они так говорят, они говорят о старой версии!, теперь wxWidgets 3.x включают последнюю версию wxscintilla и ее поддержку языков справа налево
SetLayoutDirection(wxLayout_RightToLeft)
, поэтому я ищу способ выровнять текст по правому краю, возможно, поStyleSetFont()
, но я не знаю, как это сделать .. если нет, возможно, в следующей версии!2. @Saif, ты пытался спросить на форуме Scintilla или ML?
3. после прочтения вашего комментария я публикую его в интересующей Google группе scintilla, спасибо
Ответ №2:
Наконец, я обнаружил, что Scintilla поддерживает образец RTL SetLayoutDirection (wxLayout_RightToLeft)
, но таким языкам, как арабский / японский / иврит .. требуется ДВУНАПРАВЛЕННЫЙ ДИСПЛЕЙ для правильного отображения символов, а в Scintilla сейчас этой функции нет.
Итак .. эта функция запрошена для разработки в будущем, но не доказана прямо сейчас, LoL !.
https://sourceforge.net/p/scintilla/feature-requests/640/
https://groups.google.com/forum /#!тема/сцинтилла-интерес/IfLfG3Zj_nY/обсуждение