【发布时间】:2019-09-09 21:06:12
【问题描述】:
我有一个TEdit 框,在它的KeyUp 事件中,我用空白"" 替换任何出现的"-"。当我在 Win32 上运行时,它的工作方式完全符合我的预期 - 每当我键入 - 键时,它会短暂显示然后被删除。
当我在 iOS 上运行并反复按 - 键时,我得到的结果是删除编辑框中的最后一个字符每隔一次按-。例外是第二次和第三次按下,我两次都删除了最后一个字符。它应该只是删除-。
例如如果我在编辑中从123456 开始,然后开始只按减号键,我会得到您在下面这个 gif 中看到的内容:
表格形式的结果如下:
void __fastcall TForm1::EditConstantKeyUp(TObject *Sender, WORD &Key, System::WideChar &KeyChar,
TShiftState Shift)
{
if (KeyChar == 45) { // minus key pressed (ascii code for that key is 45)
EditConstant->Text = StringReplace(EditConstant->Text, "-", "", TReplaceFlags() << rfReplaceAll);
}
我在这里缺少什么基本的东西?我正在使用 C++ Builder 在 Rad Studio 10.3.2 中工作。
【问题讨论】:
标签: firemonkey c++builder c++builder-10.3-rio