Ich muss ein übergangsloses, aber einseitig bewegliches WinForms Formular erstellen. Ist es möglich?Captionless, aber bewegliche WinForms Form
Hier ist ein Beispiel von VB6-Anwendung, die ich Portierung bin (ich hinzugefügt Cursor in Paint :)):
Ich muss ein übergangsloses, aber einseitig bewegliches WinForms Formular erstellen. Ist es möglich?Captionless, aber bewegliche WinForms Form
Hier ist ein Beispiel von VB6-Anwendung, die ich Portierung bin (ich hinzugefügt Cursor in Paint :)):
die keinen Formborderstyle = Set und dann benutzerdefinierten verwenden, um Ereignisse Mouseover und die Maus nach unten auf Ihrem Griff Bewegen oder schauen Sie in den SplitContainer.
Ok, hier gehen Sie, der folgende Code dafür sorgen wird, dass die Form nur vertikal bewegt werden kann:
public partial class FrmMain : Form {
Point mouse_offset;
private void FrmMain_MouseDown(object sender, MouseEventArgs e) {
mouse_offset = new Point(-e.X, -e.Y);
}
private void FrmMain_MouseMove(object sender, MouseEventArgs e) {
if (e.Button == MouseButtons.Left) {
Point mousePos = Control.MousePosition;
mousePos.Offset(0, mouse_offset.Y);
mousePos.X = this.Location.X;
this.Location = mousePos;
}
}
}
Ist Ihre Frage, wie das Formular zu bewegen, wenn Sie auf die Titelleiste versteckt haben? Wenn ja, was bedeutet "einseitig beweglich"? –
Es bedeutet, dass die Form nur auf der oberen Seite beweglich ist (wo der Cursor gemalt ist) – SiberianGuy