0

wxStyledTextCtrl 非常好,但没有完整记录.. 任何人都知道如何在 Right 中对齐文本?

// To create one
this->STYLED_TEXT = new wxStyledTextCtrl(PANEL, wxID_ANY, wxDefaultPosition, wxSize(500, 500));

// To set it RTL
STYLED_TEXT->SetLayoutDirection(wxLayout_RightToLeft);

问题..如何在 Right 中对齐文本?

这没有用!

this->STYLED_TEXT = new wxStyledTextCtrl(PANEL, wxID_ANY, wxDefaultPosition, wxSize(500, 500), wxALIGN_RIGHT | wxALIGN_CENTER_VERTICAL | wxRIGHT);

预先感谢

4

2 回答 2

2

这是做不到的。wxStyledTextCtrl 是 Scintilla 文本编辑器的包装器。它实际上是用源代码语言而不是自然人类语言编写的。正如他们在他们的网站上所说:

Scintilla 不能正确支持从右到左的语言,如阿拉伯语和希伯来语。虽然这些语言的文本可能看起来正确,但无法像与其他编辑组件一样正常与此文本交互。

也许 wxRichTextCtrl 可能会起作用。

于 2016-10-24T05:12:46.560 回答
1

Finlay,我发现 Scintilla 支持示例 RTL SetLayoutDirection (wxLayout_RightToLeft),但是阿拉伯语/日语/希伯来语等语言需要BIDIRECTION DISPLAY才能正确显示字符,而 Scintilla目前没有此功能

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

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

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

于 2016-10-25T20:12:14.300 回答