wxWidgets — wxStyledTextCtrl — выравнивание текста RTL

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);

Заранее спасибо

0

Решение

Это не может быть сделано. wxStyledTextCtrl — это оболочка для текстового редактора Scintilla. Он действительно предназначен для написания на языках исходного кода, а не на естественных языках. Как они утверждают их сайт:

Scintilla не поддерживает должным образом слева направо языки, такие как арабский и иврит. Хотя текст на этих языках может выглядеть корректно, с этим текстом невозможно взаимодействовать, как обычно с другими компонентами редактирования.

Может быть, wxRichTextCtrl может работать вместо этого.

2

Другие решения

Finlay, я полагаю, что Scintilla поддерживает образец RTL SetLayoutDirection (wxLayout_RightToLeft), но языки как арабский / японский / иврит .. нужны Двунаправленный дисплей правильно показывать символы и сцинтиллы не имеет этой функции сейчас.

Итак … эта функция запрашивается для разработки в будущем, но не доказана сейчас LoL !.

https://sourceforge.net/p/scintilla/feature-requests/640/

https://groups.google.com/forum/#!topic/scintilla-interest/IfLfG3Zj_nY/discussion

1

По вопросам рекламы [email protected]