wxWidgets - wxStyledTextCtrl - 文本对齐 RTL

wxWidgets - wxStyledTextCtrl - Text alignment 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);

提前致谢

这是不可能的。 wxStyledTextCtrl 是 Scintilla 文本编辑器的包装器。它实际上是为了用源代码语言而不是自然的人类语言编写的。正如他们在 their site 上所说:

Scintilla does not properly support right-to-left languages like Arabic and Hebrew. While text in these languages may appear correct, it is not possible to interact with this text as is normal with other editing components.

也许 wxRichTextCtrl 可以代替。

Finlay,我发现 Scintilla 通过 SetLayoutDirection (wxLayout_RightToLeft) 支持示例 RTL,但是像 Arabic/Japanese/Hebrew.. 这样的语言需要 BIDIRECTION DISPLAY 才能正确显示字符,并且Scintilla 目前没有此功能

所以..这个功能是未来开发的要求,但现在还没有证明大声笑!

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

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