Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako onemogućiti zatvaranje glavnog prozora?

[es] :: Access :: Kako onemogućiti zatvaranje glavnog prozora?

[ Pregleda: 2834 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

mika
NBG-ML

Član broj: 55
Poruke: 640
*.privsav.co.yu.



+1 Profil

icon Kako onemogućiti zatvaranje glavnog prozora?29.11.2004. u 11:52 - pre 236 meseci
Pozdrav svima.

Imam jedno pitanje na koje nisam uspeo da nađem odgovor ni na ovom a ni na nekim stranim forumima. Interesuje me, da li može (i na koji način?) da se, u MS Access aplikaciji, u glavnom prozoru ugasi/disable-uje close dugme, tj. da je zatvaranje aplikacije moguće samo klikom na određeno dugme na formi ili toolbaru?

Ako to nije moguće, da li je moguće da se detektuje pritisak na Close dugme u gornjem desnom uglu prozora (uopšte, da li je moguće da se detektuje izlazak iz aplikacije) da bi se pre toga izvršila neka akcija? Ovo mi je potrebno, jer bih želeo da napravim log tabelu, sa podacima o Logoutu i Loginu; to bih odradio na taj način što bi na početku, neposredno posle login forme odradio INSERT upit u log tabelu, i na kraju, klikom na LOGOUT, odradio takođe još jedan INSERT upit. Pogađate o čemu se radi, ako korisnik klikne na Close (a ne na logout) onda podaci u log tabeli postaju nekonzistentni, tj. može da se desi da postoje dva logina jedan za drugim a bez logouta između, dakle - potrebno mi je ili da detektujem zatvaranje aplikacije (i da u tom slučaju izvršim INSERT upit u log tabelu) ili da zabranim zatvaranje aplikacije (ovo drugo, pretpostavljam, preko nekih API funkcija).

Pozdrav i hvala!
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
 
Odgovor na temu

mika
NBG-ML

Član broj: 55
Poruke: 640
*.privsav.co.yu.



+1 Profil

icon Re: Kako onemogućiti zatvaranje glavnog prozora?29.11.2004. u 12:05 - pre 236 meseci
MH, 5 minuta posle postavljanja pitanja, malo sam bolje pogledao i našao rešenje. Original sa www.mvps.org :

(Q) I want to make sure that users always exit my database using the Exit button provided on my Switchboard. However, I'm not able to prevent them from closing Access itself. Is there a way to control how they exit Access?

(A) You can use the UnLoad event of a form to do this. If your switchboard is the first form to open and always remains open in the background, you can apply the following method on the switchboard. Otherwise, I would recommend creating a hidden form for this functionality.

Define a new variable in a new module

Code:

Public pboolCloseAccess as Boolean
'Note: Access 2.0 does NOT recognize Boolean
'type variables. Use integer type instead,
'passing a -1 as True, and 0 as False.


Now, when you open the database, set
Code:
pboolCloseAccess=False


In your (Switchboard/Hidden) Form's Unload Event, set the variable to true and also check for its value

Code:

pboolCloseAccess=True
DoCmd.Close acForm, "hfrmCloseAccess" 
docmd.Quit


If your Switchboard form closes during one instance, then create a new form (hfrmCloseAccess). You can minimize the size if you want because it will be in hidden mode. Type the following in hfrmCloseAccess's OnUnload Event
Code:
if not pboolCloseAccess then cancel = true 


Create the Autoexec macro. If you already have one, make sure that you open hfrmCloseAccess before anything else IN HIDDEN MODE.

The reasoning here is, when someone clicks X in Access's window, the System starts closing down all open objects in a first-open-last-close basis. Since your hfrmCloseAccess form is the first one to open, it will be the last to close. And since the boolean var is still False, Cancel will always be true, hence Access will not close. On the other hand, when the user clicks on the Exit button or closes your switchboard, you're setting the boolean var to True and then closing the hfrmCloseAccess form, which WILL close now and hence Access will close itself.


Što volim kad odgovorim sam sebi...
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
 
Odgovor na temu

izonic
ishab zonic
Tuzla

Član broj: 38128
Poruke: 591
195.222.59.*

Sajt: www.icentar.ba


+2 Profil

icon Re: Kako onemogućiti zatvaranje glavnog prozora?30.11.2004. u 01:30 - pre 236 meseci
Zatvaranje forme mozes kontrolisati na unload.
Normalno ako neces da se zatvori onda Cancel=1,
ali mislim da ti pravis nesto drugo.
Kako sam razumio hoces da kontolises logovanje korisnika na tvom programu.
Logovanje i nije problem ali iskljucenje iz programa jest.
To mozes jednostavno rijesit.
Pri ulazu u program napravis startnu formu naprimer logo firme.
Na on Open upises svoj kod za logovanje a na Unload Kod za odlogiranje.
na on Timer postavis ovaj kod.
Form.Visible = False
Form.OnTimer = ""

zxz
 
Odgovor na temu

mika
NBG-ML

Član broj: 55
Poruke: 640
*.privsav.co.yu.



+1 Profil

icon Re: Kako onemogućiti zatvaranje glavnog prozora?01.12.2004. u 07:17 - pre 236 meseci
Upravo tako, uspeo sam da odradim ceo login sistem, doduše rudimentaran i lako "provaljiv", ali važno mi je samo da funkcioniše upisivanje u log tabelu i onemogućavanje isključivanja aplikacije, na način na koji sam pronašao i koji zaista radi.
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
 
Odgovor na temu

[es] :: Access :: Kako onemogućiti zatvaranje glavnog prozora?

[ Pregleda: 2834 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.