- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个项目 ( Void ) 使用 Eto .NET 和 Mono 的 GUI 框架。我正在构建一个类似 Vim 的文本编辑器,它将至少具有 Vim 具有的某些模式(是的,我知道,one does not simply...)。
我的 GUI 的基本结构就是一个 Form
其 Content
是一个 Drawable
,因此我可以最大程度地灵活处理不符合 GUI 应用程序常规样式的内容。当我停止正常模式时,我已成功将 KeyUp
处理程序附加到表单,并且我有 ZQ
命令关闭窗口。
KeyUp += (sender, eventArgs) =>
{
var keyPress = eventArgs.AsVoidKeyPress();
if (keyPress != null)
{
handler(keyPress);
}
};
这对于普通模式来说很好,但对于其他模式,例如命令模式和插入模式,我希望能够捕捉特殊的组合键(即使用 CTRL 的组合),但除了我只想将内容捕获为文本。这将使我能够处理 Unicode 等。换句话说,我不只是想自己将击键转换回文本。
我试图附加一个 TextInput
事件。
Console.WriteLine("I see this, but...");
TextInput += (sender, eventArgs) =>
{
Console.WriteLine("...I don't see this, no matter what I type.");
};
我什至注释掉了我对 KeyUp
事件的订阅以查看是否存在冲突,但我没有收到任何响应。这是因为我将它直接附加到表格吗?有什么方法可以在不实际使用文本框的情况下捕获文本输入吗?
最佳答案
TextInput
事件已在开发分支(即将发布的 2.1 版本)中完全实现,您可以通过 myget 使用它喂养。这应该捕获来自 Drawable
和其他控件(如 TextBox
等)的文本输入。它用于实现新的 MaskedTextBox
,它只是一个子类的 TextBox
。
它不应与 KeyDown/KeyUp 事件冲突,除非您将事件参数的 Handled
属性设置为 true
关于c# - 如何在 Eto 中捕获没有文本框的键盘输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28118982/
我有一个项目 ( Void ) 使用 Eto .NET 和 Mono 的 GUI 框架。我正在构建一个类似 Vim 的文本编辑器,它将至少具有 Vim 具有的某些模式(是的,我知道,one does
我从事此工作已有一段时间了,但似乎无法弄清楚如何让 Eto.Forms TreeGridView 控件正确呈现。我现在正尝试添加一些 GridViewItem,但我只是在顶部得到一个灰色的小条: 这是
在 Linux 上使用 F# 和 Eto.Forms,带有 Gtk3 后端。 编辑:添加更新到 this google groups thread .我目前最好的理论是,Eto 在其 Gtk 后端向小
目前我正在为 Windows 和 MacOS 开发一个应用程序。使用 Eto.Platform.Mac64 (2.4.1) nuget 包为 MacOS (10.13.4) 创建了模板应用程序。该应用
我是一名优秀的程序员,十分优秀!