MS Access - czy da się ukryć pasek programu podczas uruchamiania formularza?

0

Hej. Mam takie pytano. Ustawiłem tak, że użytkownikowi wyskakuje jako pierwszy ekran logowania. Wszystko ma wyłączone: menu, tabele, cały widok jaki oferuje Access. Jednak jak zamknę okno formularza to zostaje jeszcze całe wyszarzone okno microsoft access z wersją programu. Użytkownik ma tylko możliwość zamknąć to okno, jednak nie chcę podwójnego zamykania przez niego, tylko jeśli zamknie formularz to zamyka się to okno. Jak je ukryć?

1

Jeżeli dobrze rozumiem - chcesz zamknąć bazę jeśli użytkownik zamknie formularz logowania tak ?
Jeśli tak to użyj DoCmd.Quit dla On Close tego formularza:


Private Sub Form_Close()

 DoCmd.Quit

End Sub

0

No nie do końca. Mam problem taki jak tutaj: stack, jednak rozwiązanie z 4 plusikami nie działa u mnie.

Mam dokładnie sytuację taką jak tutaj: stack, ale to rozwiązanie również nie działa nie wiedzieć czemu.

1

No ale to masz pewnie ten sam problem co gość tam. Masz włączone formularze jako "okna" (tak zwane "ovelapping windows") a chcesz zakładki czyli "Tabbed Documents" tak ?

Zmieniasz to w opcjach: File -> Options -> Current Database:
screenshot-20190723084146.png

Zrobiłeś to i dalej nie działa ? (bo rozumiem że dodałeś linie chowające menu i pasek "ribbon") ?

0

@BlackBad: W sumie nie wiem czy się rozumiemy. Tzn. wiem co napisałeś, ale wydaje mi się, że mam porobione to wszystko. W screenach załączam co widzę po włączeniu - wysłałem też jak mam ustawienia obecnej bazy + kod odpowiedzialny za wczytanie formularza "logowanie".

Private Sub Form_Load()
' Czyszczenie formularza na wejściu.
DoCmd.GoToRecord acDataForm, "Logowanie", acNewRec
haslo.InputMask = "Password" 'Hash na hasło w oknie logowania.
Polecenie18.Default = True ' Polecenie powoduje, że kliknięcie klawisza ENTER spowoduje wykonanie danej akcji (w tym formularzu jest to zalogowanie się).
DoCmd.ShowToolbar "Ribbon", acToolbarNo
DoCmd.RunCommand acCmdWindowHide
End Sub
1

No więc właśnie - czyli masz "nakładające się okna" zamiast "dokumenty kartotekowe", a takie było wskazanie w tym rozwiązaniu które podałeś wcześniej:

You don’t need any API code.

The following settings should do the trick:

File->Options->Current Database

Uncheck “Display document tabs” Choose Tabbed Documents. ---> Tego nie zrobiłeś - wybierz Dokumenty Kartotekowe

In above also un-check Display navigation Pane. **---> Tego też nie zrobiłeś - odznacz "Wyświetl okno nawigacji" **

To hide the ribbon, execute this ONE line of VBA in your startup:
DoCmd.ShowToolbar "Ribbon", acToolbarNo

jak to zrobisz będziesz miał efekt jaki chcesz ... ale nie wiem czy jesteś świadomy, że te ustawienia będą działały później cały czas chyba, że to jakoś znów oprogramujesz.

Ps. jak zrobisz powyższe możesz sobie ustawić manualnie wielkość okna i przy następnym otwarciu bazy on je otworzy z takim rozmiarem.

0

@BlackBad: Przeprowadziłem test na pustej bazie, czytaj nowej takiej bez niczego. Załączę ją tutaj. Opcje, które zrobiłem:

  1. Wklejenie dwóch linijek kodu:
Private Sub Form_Load()
DoCmd.ShowToolbar "Ribbon", acToolbarNo
DoCmd.RunCommand acCmdWindowHide
End Sub
  1. Zrobiłem te dwie rzeczy, o których pisałeś:

Uncheck “Display document tabs” Choose Tabbed Documents. ---> Tego nie zrobiłeś - wybierz Dokumenty Kartotekowe
In above also un-check Display navigation Pane. ---> Tego też nie zrobiłeś - odznacz "Wyświetl okno nawigacji"

  1. A, formularz1 ma popup ustawiony na tak.

I dalej efekt jest taki, którego właśnie nie chcę. Czegoś jeszcze brakuje w układance - czego?

1

Teraz z kolei nie odznaczyłeś "wyświetl karty dokumentów ", wcześniej odznaczyłeś. Poza tym Twój przykład działa u mnie OK ... no może z tą różnica że stworzyłeś formularz nie związany z oknem accesa i teraz masz taką sytuację (lewe okno to okno accesa prawe Twoj formularz) :

screenshot-20190723095444.png

Ustaw formularz jak ten (nie pamiętam które to ustawienie a nie mam już więcej czasu się bawić) :

screenshot-20190723095336.png

0

@BlackBad: w takim razie jak go powiązać?

Formularz nie związany z oknem accesa
Bo zrobiłem tak jak pisałeś i dalej mam problem, już dostaję...

1

No przecież wkleiłem Ci ustawienia czystego nowego formularza w 2 screenie ustaw jak tam i będziesz miał OK (może tylko ustaw No dla Record selectors i navigation buttons jeszcze). To sa ustawienia standardowe dla nowego formularza ... widać musiałeś coś grzebać z tym swoim formularzem albo masz jakieś inne ustawienia.

jak to zrobisz ustaw wielkość całego okna access na rozmiary jakie chcesz zamknij i otwórz ponownie i będziesz miał ten efekt z podanego przykładu:

screenshot-20190723102234.png

Nie umiem Ci bardziej pomóc.

0

@BlackBad: to prawie jesteśmy w domu... Cały czas miałem to załączone. Mam efekt jak na załączonym zdjęciu. Jednak rozmiar mojego okna logowania jest mniejszy, co już widziałeś. Pisałeś wcześniej:

Ps. jak zrobisz powyższe możesz sobie ustawić manualnie wielkość okna i przy następnym otwarciu bazy on je otworzy z takim rozmiarem.
Które to miejsce? Bo znalazłem np.

Private Sub Form_Load()
Form.Move Left:=11500, Top:=6500, Width:=7000, Height:=6000
End Sub 

jednak to nie to.

1

Ustaw sobie wielkość okna "Manualnie" czyli przyciskiem "re-size" w oknie Windows .. standardowa ikonka na lewo od zwykłego zamknięcia okna. jak ustawisz sobie rozmiar jaki chcesz ten zostanie zapamiętany i przy następnym otworzeniu bazy rozmiar będzie zachowany.

Inna sprawa to to co pisałem wyżej ... co jak już się zalogujesz ? Za pewne będziesz chciał mieć już zupełnie inny rozmiar ;) ... ale to już zabawa z rozmiarami okna itp. itd. i ja tu odpadam ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1