c# - 以编程方式设置控制台窗口大小和位置

标签 c# windows console position z-index

我想在桌面上打开多个控制台程序。 这是我每次必须做的: 1.右击桌面->屏幕分辨率->检测(4台显示器)。 2.打开 16 个不同的控制台程序(每个屏幕 4 个)。 3.单击所有窗口以正确获取 Z 顺序。 3.右键单击任务栏->堆叠显示窗口(将所有 16 个窗口组织成完美的正方形,每个屏幕上 4 个按 z-index 顺序排列)。

有没有办法以编程方式完成其中的一部分,以帮助加快速度?

最佳答案

您可以使用 Windows API 移动您的控制台窗口。使用 DllImport 声明您要使用的 WinApi 函数:

[DllImport("kernel32.dll", SetLastError = true)]
static extern IntPtr GetConsoleWindow();

[DllImport("user32.dll", SetLastError = true)]
internal static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);

然后给他们打电话:例如

IntPtr ptr = GetConsoleWindow();
MoveWindow(ptr, 0, 0, 1000, 400, true);

您可以进一步使用 WinApi 函数作为 SetWindowPos。您可以通过在网络上搜索 PInvoke 和函数名称来找到 DllImport 语法。按照那里和 MSDN 中的说明进行操作。

关于c# - 以编程方式设置控制台窗口大小和位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35263590/

相关文章:

python - pybind module.obj : error LNK2001: unresolved external symbol

c - Linux 的 kbhit()[和 getch()] 问题

c# - ShowHeaderWhenEmpty、EmptyDataText 和 EmptyDataTemplate 在 gridview 中不起作用

c# - Ninject - 管理泛型类型的不一致性?

c# - 在我的控制台应用程序中调用 Entity Framework 类

C++ libcurl 控制台进度条

javascript - 使用 browserify 进行调试 : calling functions and vars in console

c# - Cosmos,在 MessageController 中检索对话数据

PHP Rename() 删除 Windows 中的所有者属性?

Python 关闭子进程