问题标签 [virtual-desktop]
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.
windows-10 - Windows 10 IVirtualDesktopManager::MoveWindowToDesktop
我一直在尝试使用IVirtualDesktopManager::MoveWindowToDesktop在虚拟桌面之间移动窗口。
在我自己的窗口上使用它效果很好,但不幸的是,当我尝试在另一个进程的窗口上使用它时,它会因 E_ACCESSDENIED 而失败。
可悲的是,“以管理员身份启动”还不够好。我是否遗漏了一些我不知道的关于 COM 接口的东西,或者它只是设计不当?
wpf - 一个没有任务栏图标的窗口,没有出现在 Alt-Tab 中并且*没有*使用 ToolWindow 扩展样式
我有一个似乎是 Windows 10 的新问题。
我想创建一个用户可见的表单,但没有任务栏图标,并且不会出现在Alt+Tab
.
如果有人愿意通过遵循此处针对 WPF 或 Windows 窗体的公认解决方案来牺牲窗口的正常样式,这是完全可行的。
WPF 和 Windows 窗体的一般建议是:
- 设置
ShowInTaskbar
为false
- 启用
ToolWindow
样式(通过在 WinForms 或WindowStyle
WPF 中设置边框样式)
但是,这在 Windows 10 中使用虚拟桌面时有一个新的实际问题:当您执行上述操作时,WPF 或 WinForms 窗口将出现在每个虚拟桌面中。请参阅我的带有红色背景的示例应用程序:
这会影响Task View
切换屏幕和实际桌面本身。无论你走到哪里,表格都在那里!
有没有办法在 Windows 上显示一个表单——甚至只是一个位图——任务栏中没有任何内容,没有任何内容,Alt+Tab
也没有在每个虚拟桌面上复制窗口?
我花了两天时间研究所有可能的选项,在线尝试每个示例,阅读有关窗口样式的 MSDN 文档等,但都采用相同的方法,通过 P/Invoke 调用或直接调用,但无论哪种方式,结果都是相同的。
virtualization - Ulteo OVD 是用哪种编程语言编写的?
我正在做一个学术项目Virtual Desktop Infrastructure。我想使用开源虚拟桌面软件Ulteo OVD 4.0.2 。但我不知道 Ulteo 编码的是哪种语言。你能告诉我吗?
java - 识别/设置 JFrame 的虚拟桌面工作区
我想为在多显示器设置和虚拟桌面设置下工作的 Linux 应用程序模拟 Windows-Snap 功能。为什么?我只是这样做,为了踢。如果归根结底,我也可以在 Linux 中使用一些本机 C++ 代码来实现这一点,并使用 JNI 链接到它。
目标:
- 按 Super 键 + 向右箭头,JFrame 现在在右侧最大化。
- 再次按 Super 键 + 向右箭头,JFrame 现在在下一个监视器的左侧最大化。
问题:
- 虚拟桌面是我的问题——我不知道如何在 Java 中检测它们。有谁知道实现这一目标的有用方法?
- 我需要能够在第二次正确捕捉时将 JFrame 移动到下一个虚拟桌面。
代码:
此代码成功检测到窗口在哪个物理监视器上,但它不适用于虚拟桌面。我没有在这里添加任何捕捉代码,这仅用于监视器检测。如果您想看看:(使用空间并输入交换监视器)
更改虚拟桌面时,代码向我显示了相同的 GraphicsDevice。我正在运行 Lubuntu x64 15.10 并运行 Java x64 版本 8u25。
c# - 跨多个 Windows 10 虚拟桌面的持久窗口?
我有多个窗口的 C# WPF 程序。我添加了对 Windows 10 桌面的支持,但用户希望在桌面之间移动时某些窗口留在屏幕上。
例如,如果在第一个桌面上打开窗口 A 并且他们翻转到第二个桌面,他们希望窗口 A 保持在新桌面上的相同位置。
我知道的唯一功能来自 VirtualDesktopManager:
有没有办法做到这一点?
还有一种方法可以检测何时启动桌面翻转?因为如果是这样,我总是可以调用 IsWindowOnCurrentVirtualDesktop(),如果答案是否定的,我可以调用 MoveWindowToDesktop() 将它放在那里。看起来有点像黑客,但如果我有办法检测到桌面变化,就可以完成工作。
windows - Windows 10 触控板手势编程
我在互联网上查看了一种在 Windows 10 上更改触摸板上不同手势操作的方法,除了触摸板提供商制作的软件外,没有找到任何东西,它只允许我反向滚动和启用/禁用手势。
由于 Windows 10 引入了多个虚拟桌面,并且 3 指滑动手势只允许我在我的实际虚拟桌面中更改窗口,我想知道是否有人知道 Ubuntu 上是否有类似 TouchEgg 的东西。
这是 TouchEgg 允许您做什么以及如何做的示例:http: //www.howtogeek.com/howto/43097/how-to-get-macbook-style-finger-gestures-on-ubuntu-linux /
基本上,有一个配置文件,您可以在其中编写一行代码来为您想要的任何手势设置操作。
c# - 将其他进程的窗口移动到另一个虚拟桌面
所以我在 Windows 10 下实现了一个类似 win-tab 的界面。我试图将其他进程的窗口移动到另一个虚拟桌面。使用这个问题的 API,我已经可以将自己的应用程序移动到任何桌面。但是当我在调用 MoveWindowToDesktop(IntPtr TopLevelWindow, Guid CurrentDesktop) 时移动其他窗口时,我得到了 E_ACCESSDENIED 作为返回码。在这个 Github 项目中,有人设法将 DLL 挂钩到其他进程,以便用户可以成功触发此功能。
我怎样才能做到这一点?
c++ - 如何在 C++/Win32 中使用 IVirtualDesktopManager 接口
我需要从 Win32 搜索最大化的窗口(通过使用EnumWindows
),但我也想过滤当前虚拟桌面上的窗口。在 MSDN 上,我找到了一个关于IVirtualDesktopManager
接口的页面,但似乎没有关于如何使用这个接口的信息。
引发以下错误:
非静态成员引用必须相对于特定对象
引发此错误:
不允许不完整的类型
我只找到了IVirtualDesktopManager
在 C# 中使用接口的解决方案。
winapi - 以编程方式更改桌面文件夹位置的最快方法
我想创建一个应用程序,允许用户在不同的 Windows 10 桌面上拥有不同的图标。我可以使用Window Station 和 Desktop 功能以及Virtual Desktop Shell Interface来处理虚拟桌面的切换。所以现在我知道如何检测桌面已被切换,我需要尽快更改桌面用户文件夹的位置。
我知道在用户界面中有两种方法可以做到这一点:
A) 通过用户文件夹的属性
%HomePath%/Desktop
在资源管理器中打开- 右键单击背景,打开属性
- 在新路径中的选项卡位置类型中
- 点击确定然后否(因为您不想移动文件)
- 有时需要:点击桌面,按F2
.
B)通过注册表
- 换新地址
Desktop
_HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
- 重新登录
.
如果不是用于重新登录部分,则 B 选项将是编程解决方案的理想选择。正如您当然可以理解的那样,这有点破坏交易。
delphi - 在 Delphi 中使用 IVirtualDesktopManager
我正在尝试在 Windows 10 的 Turbo Delphi 中使用 IVirtualDesktopManager。我没有收到任何错误,但 IsWindowOnCurrentVirtualDesktop 和 GetWindowDesktopId 没有返回任何有用的信息。有谁知道我在这里做错了什么?谢谢。
好的,这是一个简单的例子:这个项目只是一个带有 TMemo 和 Ttimer 的表单。这表明 Form1.handle 不能用于检查窗口是否在当前桌面上。但是,如果您检查 Application.Handle,那么如果您切换到另一个桌面并再次返回,那么 is 将正确返回 false,因此请检查备忘录中写的内容。我觉得这很了不起,因为我认为一个应用程序可以在不同的桌面上显示多个窗口?