В приложении C # winform я пытаюсь реализовать некоторые функции диспетчера окон Linux.
Я уже сделал много вещей, но сейчас я пытаюсь сделать часть изменения размера, когда вы нажимаете определенную комбинацию в окне, а затем перемещаете мышь вправо / влево, ширина окна увеличивается вправо / влево, переместите его по диагонали, окно будет увеличиваться в обоих направлениях.
Теперь я уже знаю, как зарегистрировать горячие клавиши, получить / установить курсор мыши pos, переместить окно и т. Д. Все в winapi.
Вещь, которую я не могу получить так много, как я могу увеличить окно, скажем, ширину, в одном направлении? если я обычно увеличу его, он будет охватывать оба направления. Я подумал об этом, и я думаю, что: окно будет увеличиваться в обоих направлениях, но если мы хотим просто увеличить его ширину вправо, мы продолжаем перемещать / перемещать его в его начальной точке, так что левая сторона из этого останется фиксированным, будет правый будет охватывать.
Какой правильный и простой способ сделать это? Я прав насчет своего предположения?
И обратите внимание, что я не хочу, чтобы это работало только в моей форме, но в любом окне.
Любой код C ++ / C # / Winapi поможет.
Любые идеи / мысли какого-либо рода также будут отличными.
Большое спасибо.
Любое окно Windows:
Других решений пока нет …