Schließen Button der Titelleiste ausblenden/deaktivieren



  • Hallo,

    ich schreibe zur Zeit ein Programm (IDE -> SharpDevelope) indem der Benutzer aus bestimmten Programmtechnischen Gründen den Schließen Button des erstellten Fensters nicht benutzen darf oder sollte. Daher habe ich die Frage welche Klasse oder welcher Befehl in der WindowsForm dafür zuständig ist. Gibts vielleicht was ähnliches wie die Befehle zum Deaktivieren der Minimieren(-> MinimizeBox = false) und Maximieren(-> MaximizeBox = false) Button? Wie gesagt ich will einfach nur das der Benutzer den Schließen Button nicht benutzen kann.

    Danke im Voraus. 🙂

    MfG

    Kapp.Sparda



  • this.ControlBox = false;
    

    müsste gehen. Einzigster nachteil:

    Minimized Button und Max Button verschwinden auch

    mfg Helfender Helfer



  • Danke für die Antwort, funktioniert auch so das mein Menü noch dableibt!
    😃 😃 😃

    Dann hab ich da noch ein Problem... 😞
    Irgendwie funktioniert meine Positionierung der Fenster nicht, hab schon mehrers versucht mit Top, Left und eingien anderen Methoden aber irgendwie, mag das Fenster nicht so wie ich. Jedes mal wenn ich es neu Compiliere oder die *.exe ausführe dann ist es jedes mal wo anders zumindest ist es nicht da wo ich es will.
    Also mein Hautpfenster soll in der linken oberen Ecke sein, und auch da bleiben. Dann gibts noch eine Art PopUp Fenster das genau neben meinem Hauptfenster erscheinen soll, aber das ist auch irgendwie sehr spontan in der Position. 👎



  • Ja da sind die forms eigenständig wenn man ihnen bei

    this.StartPosition = WindowsDefaultLocation;

    gibt. Da gibt Windows selbst den fenster die Position wo es hin soll. Deswegen musst du bei

    this.Location = new Point(0,0) //Jetzt müsste es in der linken obere ecke sein

    und das andere Fenster ist dann einfach:

    this.Location = new Point(/*breite des anderen Fensters*/ andereForm.Size.Width, /*höhe des anderen Fensters*/ andereForm.Size.Height);

    das heißt also das die andere form auch was von der hauptform wissen sollte oder du übergibst ihr eine Size 😃

    mfg Helfender Helfer



  • Irgendwie...

    gehts trotzdem nicht, das Ding ist nach jedem Comiliervorgang wo anders. Bis jetz habe ich: using System, using System.Drawing, using System.Windwos.Forms und using System.Threading in der Anwendung.
    Fehlt da vielleicht noch was? Irgendwie gehts garnich, kannste ma n Stück Quellcode posten. Wie schont erwähnt habe ich schon viele Varianten ausprobiert. wo genau soll das dann eigentlich hin, mit dahin wo die Größe und der andere Krempel definiert wird oder wo anders?

    Was mir dann auch noch aufgefallen ist, wenn dich dann Button drücke damit das PopUp erscheint wandert das Ding bei jedem ButtonClick woanders hin (von oben links nach unten rechts), das macht das Fenster dann so lange bis es in der mitte des Bildschirms ist. Dann fängt das ganze wieder von vorne an.



  • hm beim SharpDevelope bin ich mir da nicht sicher. Aufjedenfall macht man sowas im Konstruktor von der Form poste ein bisschen code 🙂

    Mehr code = mehr wissen = mehr hilfe 😃

    probier auch mal:

    this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;
    this.Location = new System.Drawing.Point(0, 0);
    

    🤡



  • Danke, Danke...

    Das mit dem Manual war der Knackpunkt, war schon wieder mal viel zu einfach um selbst darauf zu kommen.

    MfG

    Kapp.Sparda


Anmelden zum Antworten