Form close

Alle Fragen zur Programmierung, die nicht in die speziellen Themen passen
Antworten
besenmuckel
Foriker
Beiträge: 72
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Form close

Beitrag von besenmuckel » So 25. Feb 2018, 16:23

Gibt es eine Möglichkeit nur den Schliessbutton in der Titelleiste der Form für eine bestimmt Zeit zu deaktivieren? Form.Border soll auf True bleiben und alle anderen Funktionen der Titelleiste.

Benutzeravatar
gambi
Moderator
Beiträge: 312
Registriert: Mi 8. Mai 2013, 21:46
Kontaktdaten:

Re: Form close

Beitrag von gambi » Do 1. Mär 2018, 22:28

Hallo besenmuckel,
willst du den Close-Button ausblenden oder nur für bestimmte Zeit ohne Funktion lassen.
In letzten Fall wäre ein Timer möglich, der das Close-Event abfängt.

gg

Honsek
Foriker
Beiträge: 353
Registriert: Do 4. Okt 2007, 17:01
Kontaktdaten:

Re: Form close

Beitrag von Honsek » Fr 2. Mär 2018, 19:21

Hallo besenmuckel,

es gibt sicher Gründe, warum Du ein Programm zur Laufzeit - in Abhängigkeit von diesen Gründen - nicht schließen lassen möchtest. Richtig? Dann nenne uns doch mal diese Gründe und wir können Dir u.U. helfen.

Mit flottem Gruß

Honsek
---> Wenn Du eine gute Antwort erwartest, musst Du sehr gut fragen!

besenmuckel
Foriker
Beiträge: 72
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Form close

Beitrag von besenmuckel » Sa 3. Mär 2018, 19:50

Ja gibt Gründe. Bastele an einer Gui für Befehl dd. Ich persönlich nehme dazu fast immer das Terminal und Befehl dd, um das iso auf den Stick zu bringen. Es gibt zwar schon Gui dafür wie mintstick, etcher und andere. Das Programm wird dann mit gksu Programmname gestartet. Während des Schreiben hätte ich gerne das der Schliessbutton deaktiviert ist. Auch zur ganzen Laufzeit wäre ok. Return funktioniert nicht bei Form_Close. Habe deshalb Abbrechen drin um den Prozess zu killen. Inzwischen aber alles in btnEnde drin.

Code: Alles auswählen

Public Sub Form_Close()
  
  If arbeite = 1 Then
    Select message.question(("Bin beschäftigt!") & " %" & "\n\n" & ("Wollen Sie das wirklich?") & "\n", ("Nein"), ("Ja"))
      Case 1
' '         Return
        btnAbbrechen_Click()
      Case 2
        btnEnde_Click()
    End Select
  Endif
  
End
Über die Möglichkeit mit Timer habe ich auch schon nachgedacht. Es bliebe noch die Möglichkeit bei der Form Border auszuschalten und eine eigene Titelleiste auf der Form zu zeichnen. Aber alles sagt mir nicht so richtig zu.
dd_1.png
dd_1.png (56.86 KiB) 500 mal betrachtet

Benutzeravatar
gambi
Moderator
Beiträge: 312
Registriert: Mi 8. Mai 2013, 21:46
Kontaktdaten:

Re: Form close

Beitrag von gambi » So 4. Mär 2018, 12:21

Hallo besenmuckel,
das Schließen der Form verhinderst du mit "STOP EVENT" siehe hier: http://gambaswiki.org/wiki/comp/gb.qt4/window/.close.

gg

Benutzeravatar
4tionov
Site Admin
Beiträge: 232
Registriert: So 18. Mai 2014, 22:40
Kontaktdaten:

Re: Form close

Beitrag von 4tionov » So 4. Mär 2018, 15:19

Hallo besenmuckel,

ich mach mal einen Einwurf:
besenmuckel hat geschrieben:
Sa 3. Mär 2018, 19:50
Ja gibt Gründe. Bastele an einer Gui für Befehl dd.
Ok klar. Aber dd ist doch gerade so, dass es im einen Prozess läuft, und sich vom anderen aus überwachen lässt. Ich darf als Benutzer von dd, das Terminalfenster, mit dem ich dd überwache, einfach schließen ohne das laufende dd selbst zu beenden. Das heißt: Einen Überwachungsprozess für ein im anderen Prozess laufendes dd nicht schließen zu wollen, hat mit der Realität (wie dd normalerweise verwendet wird) nichts zu tun.

Wäre es vielleicht besser, dd zwar vom Überwachungsfenster aus zu starten, aber seine Laufzeit unabhängig zu machen von der Laufzeit des Überwachungsfensters?

Sodass beim Schließen des Überwachungsfensters dd weiterläuft und wenn das Überwachungsfenster erneut gestartet wird, der Status des laufenden dd Prozesses wieder angezeigt wird?
Alles Gute,

4tionov

besenmuckel
Foriker
Beiträge: 72
Registriert: Di 4. Nov 2014, 21:11
Kontaktdaten:

Re: Form close

Beitrag von besenmuckel » So 4. Mär 2018, 20:35

Vielen Dank gambi!
Funktioniert prima mit "STOP EVENT" und genau wie ich es wollte.. So einfach, warum bin ich nicht drauf gekommen. :cry:

Hallo 4tionov,
Hatte es in etwa so vor wie du beschreibst. Ich löse das im Moment etwas anders. Das Überwachungsfensters kommt wahrscheinlich auch wieder raus. Der Prozessbalken reicht aus. Werde noch ein wenig basteln.
Vielen Dank allen die mir geholfen haben.

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste