Εμφάνιση ενός μόνο μηνύματος
  #3  
Παλιά 23-02-12, 09:25
Το avatar του χρήστη Tasos
Tasos Ο χρήστης Tasos δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Τάσος Φιλοξενιδης
Έκδοση λογισμικού Office: Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική
 
Εγγραφή: 21-10-2009
Μηνύματα: 2.035
Προεπιλογή

Καλημέρα σε όλους!

Παράθεση:
Αρχική Δημοσίευση από Χρήστος Εμφάνιση μηνυμάτων
Ζητώ και πάλι την βοήθειά σας.
Ας υποθέσουμε οτι σε μια φόρμα υπάρχει ένα checkbox και ένα κουμπί Closebutton κλεισίματος της Φόρμας.
Με το κλικ του CloseButton της Φόρμας θα ήθελα να ελέγχεται το εξής:
-Αν το checkbox είναι ενεργό τότε να κλείνει η φόρμα
-ενώ
-αν δεν είναι
-να μην κλείνει
-και μάλιστα ακόμη και αν πατηθεί το κουμπάκι κλεισίματος στo παράθυρο διαλόγου της Φόρμας πάλι να μην κλείνει
-και να βγάζει προειδοποιητικό μήνυμα που να λέει "Κάντε επιλογή!"
Χρήστο εγώ δεν θα χρησιμοποιούσα επιπλέον κουμπί για να κλείσω μια φόρμα όταν ήδη
υπάρχει κουμπί κλεισίματος στο πλαίσιο ελέγχου του παραθύρου της φόρμας.

Αυτό όμως είναι καθαρά δικό σου θέμα.

Όταν θέλεις να κλείσει μια φόρμα μόνο κάτω από ορισμένες προϋποθέσεις, ο πιο σίγουρος
τρόπος είναι να γράψεις κώδικα στο συμβάν της φόρμας "Με την αποφόρτωση" (Form_Unload)
όπου σου προσφέρεται η επιλογή "Cancel" που ακυρώνει τη διαδικασία κλεισίματος ακόμα και αν ο χρήστης
προσπαθήσει να κλείσει ολόκληρη την εφαρμογή.

Παράδειγμα:

Έστω ότι το πλαίσιο ελέγχου (CheckBox) της φόρμας ονομάζεται "Check1".

Στο συμβάν της φόρμας μπορεί να τοποθετηθεί ο παρακάτω κώδικας:

Κώδικας:
Private Sub Form_Unload(Cancel As Integer)
    If Not Nz(Me.Check1) Then
        Cancel = True
        MsgBox "Πρέπει να τσεκάτετε το πλαίσιο ελέγχου για να κλείσει η φόρμα!", vbInformation
    End If
End Sub
Φιλικά

Τάσος
__________________
Ms-Office Development Team
Ανάπτυξη επαγγελματικών εφαρμογών
Απάντηση με παράθεση