Jestem pewien, że to bardzo proste, ale nie mogę go znaleźć. Czy w przypadku zamknięcia formularza dostępu można anulować zamknięcie formularza? Mam test, który zlicza rekordy w tabeli. Jeśli ta tabela zawiera rekordy, chcę zapytać użytkownika, czy chce zamknąć, czy wrócić i pracować z nimi. Jak więc anulować zamknięcie zdarzenia?Jak anulować formularz zamknąć Zamknij zdarzenie?
Odpowiedz
Można użyć zdarzenia Zwolnij:
GlobalVar ButtonClicked
Private Sub Form_Open(Cancel As Integer)
ButtonClicked = False
End Sub
Private ClickMe_Click(Cancel As Integer)
ButtonClicked = True
End Sub
Private Sub Form_Unload(Cancel As Integer)
If Not ButtonClicked Then
Cancel = True
End if
End Sub
Nie jestem pewien, czy rozumiem, czy powinienem przekazać coś do zdarzenia Form_Unload w zdarzeniu Close? – MAW74656
Och, widzę, umieść test w Form_unload, a następnie ustaw Anuluj = Prawda. http://msdn.microsoft.com/en-us/library/aa211464%28v=office.11%29.aspx – MAW74656
Dodałem znacznie więcej informacji o tym, jak z niego korzystać. – Fionnuala
Study i spróbuj tego kodu, pracował dla mnie. Zastąp niezbędne nazwy zmiennych wybranymi nazwami. Wklej kod w Form_unload Zdarzenie w formularzu. !!! UWAGA: Po wykonaniu tej operacji będzie trudno uzyskać dostęp do formularza w widoku projektu i układu
Private Sub Form_Unload(Cancel As Integer)
userresponse = MsgBox("Are you sure you want close? All your work wouldn't be saved", vbYesNo, "Database Information")
Select Case userresponse
Case 6
Cancel = False
'this line opens another form in my own case
DoCmd.OpenForm "EngMenu"
Case 7
Cancel = True
'this line keeps my own form open in my own case
DoCmd.OpenForm "UpdateForm"
Case Else:
MsgBox "You are not allowed to perform this operation", vbInformation, "Database Information"
End Select
End Subenter code here
użyć „Form_BeforeUpdate (anulowanie As Integer)” zdarzenia i ustawić anulować True.
Należy zauważyć, że po prostu nie da się zamknąć w ogóle, chyba że doda się logikę, aby rzeczywiście umożliwić aktualizację bazy danych.
- 1. Aplikacja Qt anulować zdarzenie wyjścia
- 2. Jak anulować zdarzenie ComboBox SelectionChanged?
- 3. Zamknij formularz bez aplikacji wyjścia
- 4. Jak zamknąć formularz w języku C#
- 5. Zdarzenie "zamknij" SerialPort nigdy nie uruchamia się
- 6. Jak anulować zdarzenie CellEnter/CellLeave w języku C#?
- 7. Qt: Jak obsłużyć zdarzenie użytkownika naciskając przycisk "X" (zamknij)?
- 8. Narzędzia jQuery: Jak zamknąć nakładkę?
- 9. Jak otworzyć nowy formularz, ale zamknąć stary w VB
- 10. WPF MVVM anulować Window.Closing event
- 11. Połączenie Jdbc zamknij i przygotuj zamknij
- 12. Jak anulować/anulować żądanie jQuery AJAX?
- 13. PHP: zamknij strumień wyjściowy
- 14. Aby zamknąć lub nie zamknąć połączenia Oracle?
- 15. "zamknij" strumień?
- 16. Przycisk HTML Zamknij okno
- 17. programowo zamknij aplikację win8
- 18. Zamknij zgłoszenie aplikacji dwa razy wyżej niż zdarzenie
- 19. TortoiseHG: Zamknij nazwany oddział
- 20. Zamknij wydarzenie dla chrome.app.window
- 21. Jak anulować handler.postDelayed?
- 22. Jak anulować anulowanieToken
- 23. Jak anulować JobIntentService
- 24. Jak anulować Alamofire.upload
- 25. Jak anulować żądanie http
- 26. Jak anulować UIWebView?
- 27. Jak anulować zatwierdzenie?
- 28. Jak zamknąć połączenie Boto S3?
- 29. Jak anulować operację przeciągania znacznika mapy google?
- 30. Jak anulować lub zamknąć niestandardowe okno dialogowe w jego metodzie onCreate?
Nie edytuj problemu jako odpowiedzi! Jest to bardzo mylące dla kogoś, kto czyta to, co dla ciebie rozwiązało. Zapewnienie wadliwego kodu i poprawnego kodu osobno jest jednym rozwiązaniem. –
Uważam, że formularze związane z MS-Access są trudne do kontrolowania w sposób problematyczny. Nie jestem pewien, co myśleli twórcy! – NoChance