问题标签 [modeless-dialog]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
flutter - 如何在 Flutter 中创建一个无模式的文本编辑对话框,如剪切/复制/粘贴?
Flutter TextField 有一个非常漂亮的无模式对话框,它显示在字段上方,即使在视图滚动时也保持可见:
当用户在 TextField 中点击时(而不是在他们选择字符时,即出现复制粘贴对话框时),我需要创建一些非常相似的东西。我使用 Stack 创建了一个,但很快就遇到了麻烦,因为对话框位于 TextField 的选择框之外,因此 GestureDetector 没有检测到点击(我在此处发布了问题)。在几个地方发布的解决方法是编写自定义 OverlayContainer,但我只是注意到它不会随 TextField 一起滚动。
是否有一个我忽略的小部件使无模式对话框更容易?
c# - 如何正确等待来自无模式窗口的输入
我有一个有两个无模式窗口的应用程序。第一个窗口有一个按钮,用于从另一个窗口获取输入。我的问题是什么是(有吗?)调用第二个窗口进行输入并阻止调用者的正确方法,直到用户在文本框中提供输入。这是我在这里试图解释的视觉效果:
- 应用程序启动。主窗口打开
- 用户单击主窗口中的第一个按钮 -> 第二个“无模式”窗口打开。用户切换回主窗口
- 用户点击主窗口中的第二个按钮 -> 第二个“无模式”窗口被激活并聚焦
- 第二个窗口现在等待输入到文本框中。这就是问题所在:如何阻止来自主窗口的调用,等待文本框中的输入,只有当用户在文本框中输入输入时才返回调用者,而不冻结窗口
我现在有这个 sudo 代码作为解决方案,但是循环发生在主应用程序代码中,并且它使用了太多的 cpu 只是循环。不确定在 C# 和 WPF 中是否有更好/正确的方法来执行此操作:
c++ - 如何在无模式对话框中使用 Enter 键?
我一直在为大学做一个 WinAPI 项目,我们被要求在一个对话框中实现完整的程序。起初,我使用了一个模态对话框,一切正常,除了对话框的任务栏中没有图标,因为我直接在 WM_CREATE 上创建了它,并且没有使主窗口可见,因为它不是用过的。
现在我完全放弃了主窗口句柄,只用于CreateDialog
创建一个无模式对话框,但从那以后我不能使用该Enter键作为默认按钮的替代品。
这是我的全部主要功能:
我只是做错了一些基本的事情,还是没有按照我想要的方式工作?
澄清一下:如果我Enter在对话框中按下键,我只会得到典型的 Windows 通知声音。
mfc - 在对话框之间自动移动焦点
我有一个模态对话框,在按下按钮时显示一个无模式的“伴随对话框”。为了使 UI 更加直观和流畅,我希望焦点跟随鼠标并在对话框之间移动,而无需额外点击。
是否有一个简单的消息处理程序可以在这里提供帮助?我想我可以通过在每个对话框中使用TrackMouseEvent
and来做到这一点OnMouseHover
——但对于这种“简单”的效果来说,这似乎很重要?
javascript - “ScriptError:需要授权才能执行该操作。” 从库运行 google.script.run 时
问候,
我发现了几个关于此错误的问题:
"ScriptError: Authorisation is required to perform that action."
但我找不到与我的问题有关的问题。
我想要做的是使用 google.script.run 从 .html 文件调用函数 .gs 文件,其中两个文件都在库中。参考这个答案,这个答案和这个错误报告,我在使用库的脚本中创建了“包装函数”,但仍然未能完成执行。
这是我所做的:
.html 在库中:
.gs 在库中
.gs 在使用库的脚本中:
控制台记录HERE
但随后它记录ERROR: ScriptError: Authorisation is required to perform that action.
而不是预期的输出,test123
.
注意:HTML 用于表格中的自定义无模式对话框,不适用于 Web 应用程序。
我真的希望有人能在这方面帮助我。先感谢您。
vba - 向模块添加过程会取消用户表单加载/显示,必须运行两次显示用户表单才能显示
我有一个用户表单,frmSort
它显示在运行我的主代码之前选择了哪一列。
为了frmSort
动态更新选择的列,以防从功能区打开时选择了错误的列frmSort
,我必须Worksheet_SelectionChange
在活动工作表模块中有一个代码。
由于Worksheet_SelectionChange
删除了撤消堆栈(至少我的),并且我有其他代码依赖于Application.Undo
,因此我已经在显示时将其插入Worksheet_SelectionChange
正确的工作表模块frmSort
中,并在Userform_Terminate
.
令我惊讶的是代码:在同一次运行期间
LineNum = .CreateEventProc("SelectionChange", "Worksheet")
以某种方式破坏了我的负载。frmSort.show vbModeless
首先它在添加代码后显示VBE-editor,即使没有打开VBE,这也不好。其次,它不显示用户表单。我的测试告诉我用户表单已加载,但未显示。在“程序添加”之后的同一运行中运行 ```frmSort.show vbModeless`` 不起作用。
我能够添加Worksheet_SelectionChange
并显示用户窗体modal,但不是无模式的。由于我希望能够更改主代码运行的列,并在用户窗体中显示更改,我相信无模式用户窗体是要走的路。
运行两次时它起作用的原因是我SelectionChangeOnOff
的子程序在插入之前检查程序是否存在。让我不得不按两次功能区按钮并关闭 VBE 才能继续......
关于如何进行的任何想法?
我想先将它作为模态打开,然后以无模式隐藏并重新打开,但是代码:
不卸载用户表单。不是说加载为模态然后重新加载为非模态是要走的路,而是把它扔在那里。
c++ - 使用对话框作为主窗口。未收到 WM_INITDIALOG 消息
我创建了一个无模式对话框作为主窗口,但没有向窗口过程发送 WM_INITDIALOG 消息。
这就是我所做的。
- 使用 Visual Studio 的资源编辑器创建了一个对话框模板,并将其类名设置为自定义类。
- 使用 WNDCLASSEX 注册类,窗口程序,以及一些图标和画笔等。
- 使用 CreateDialog(),最后两个参数设置为 NULL,(父窗口和窗口过程)。
- 使用 IsDialogMessage()、TranslateMessage() 和 DispatchMessage() 创建了消息循环;
- 如果未处理任何消息,则默认在窗口过程中返回 DefDlgProc()。
我想不出还有什么重要的事情。除了没有收到 WM_INITDIALOG 消息外,一切正常。我已经这样做了,所以应用程序最小化到任务栏,如果需要我可以有一个菜单。
所以我的第一个问题是,我做了什么蠢事吗?
其次,我应该期望使用这个系统接收 WM_INITDIALOG 消息吗?如果没有,什么是初始化带有字符串的组合框的好方法。(我已经查看了 WM_ACTIVATE、WM_ACTIVATEAPP 等内容,但似乎没有什么合适的。并且组合框尚未在 WM_CREATE 创建。)提前致谢。
dialog - 使ckeditor图像插件对话框非模态
我们在我们的产品中使用 CKEditor,并且我们在其中启用了图像插件。我们需要使图像对话框无模式(非模式),以便用户可以与父窗口进行交互。CKEditor 对话框定义没有任何选项可以使我看到的情况发生。有人可以帮忙吗?