カスタムウィンドウを作成しています。ウィンドウのサイズを左または上から変更すると、技術的にはウィンドウの移動とサイズ変更が同時に行われます。この効果を作成する必要があります。コードを投稿しませんでした。閉じていなくても、ウィンドウが画面上をすばやくジャンプするだけです...しかし、サイズ変更と移動に使用するコードは次のとおりです。
private void SetMousePosition(MouseEventArgs Position) {
MousePos = Position.Location;
}
private void SetRightPosition(MouseEventArgs Position) {
MouseDif = new Point(PointToClient(MousePosition).X - this.Width, PointToClient(MousePosition).Y - this.Height);
}
private void StartDrag(MouseEventArgs e) {
if (e.Button == MouseButtons.Left) {
int x = this.Left + e.X - MousePos.X;
int y = this.Top + e.Y - MousePos.Y;
this.Location = new Point(x, y);
}
}
private void StartRightResize(MouseEventArgs e) {
if (e.Button == MouseButtons.Left)
{
title.Text = PointToClient(MousePosition).X.ToString();
int x = PointToClient(MousePosition).X - MouseDif.X;
if (x < 60) x = 60;
this.Width = x;
}
}
これは、ドラッグと右の境界線からのサイズ変更のためだけに使用するコードです。左の境界線を使用してサイズを変更できるようにする必要があります...ユーザーコントロールとカスタムウィンドウを操作できるようにするためにもこれが必要ですが、意味のあるIDはわかりません...