0
我想要我的程序使主窗體的另一個進程有一個最小的窗口大小。是否可以設置另一個進程窗體的MinimumSize屬性? C#
我有正確的窗口句柄,並嘗試設置窗口的大小,如果它小於我想要的大小, 但這種方式它是完全閃爍。
的MoveWindow()使其閃爍太多, SetWindowPos()藏漢
using System;
using System.Diagnostics;
using System.Windows.Forms;
namespace myProgram
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
foreach (var process in Process.GetProcessesByName("myTarget"))
{
var handle = process.MainWindowHandle; // gets all instances of the target game
// Something like SetWindowProperty(handle, MinimumSize, new Size(500, 500)) would be perfect
// or: setting the size with
// MoveWindow() - flashes horribly
// SetWindowPos() - flashes horribly aswell
// something else?
}
}
}
}
我想一個解決方案,它是光滑,不閃爍或看可怕。
目標程序是一個遊戲,具有相當大的窗口形式。
看來你的問題對我來說還不清楚。你有什麼樣的地方可以參考你需要的嗎? – Muj
您可能需要實現全局系統鉤子,截取並修改'WM_GETMINMAXINFO'中的'lParam'。我不認爲這在C#中是可能的。 – bansi
請參閱此[Win32 GUI閃爍調整大小](http://stackoverflow.com/questions/2036599/win32-gui-flickering-on-resize)問題。
– Rainmaker