如何在编辑代码本身时将字符串设置为具有从右到左(U + 200F RIGHT-TO-LEFT MARK(RLM))unicode char?
意思是,我有给定的代码:
CComPtr<MSForms::IControl> spISubjectControl;
spControls->_GetItemByName(_bstr_t(L"Subject"), &spISubjectControl);
if (spISubjectControl != NULL) {
CComPtr<Outlook::_OlkTextBox> spSubject;
hr = spISubjectControl.QueryInterface(&spSubject);
if (spSubject != NULL) {
CString subject = L"Some words in some RTL language";
spSubject->put_Text(_bstr_t(subject));
}
}
不幸的是,在主题TextBox的“高级属性”中添加方向和特殊字符是不够的,似乎一旦我更改TextBox的内容,方向就会重置为LTR。
请帮助:)
谢谢,
尼里
答案 0 :(得分:0)
确保subject
字符串确实包含Unicode RLM字符。试试L"\u200F Some words in some RTL language"
。如果\u200F
转义序列不起作用,请尝试使用\x200F
。