August 10, 2020, 07:34:44

Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!


Access aus Taskleiste ausblenden

Begonnen von Mjay, Mai 08, 2006, 12:28:17

⏪ vorheriges - nächstes ⏩

Mjay

Hallo zusammen,

da ich mit einer DB nur über Forms arbeite will ich das Access aus der Tastleiste
ausgeblendet wird, also so das auf dem Bildschirm nur noch die geöffneten
Forms von Access sichtbar sind.
Ich hatte hier im Forum schon mal vor einer Weile eine Beispiel DB (Start setzen)
gefunden, nur da war das Problem das Form offen bleibt auf dem ich die Einstellung
festgelegt habe und andere Forms waren nicht zu öffnen.

Geht das irgendwie das ich Access aus der Tastleiste ausblende aber so das
ich über mein Startform andere Forms öffnen kann???

Danke für eure Hilfe

DF6GL

Hallo,


das geht nur bedingt und stark eingeschränkt, wenn die Formulare auf Popup eingestellt sind (und damit keine MDI-Fenster (Childs) von Access mehr sind) und dann das Acess-Fenster ausgeblendet werden könnte.

Überleg Dir stark, ob Du das wirklich brauchst oder es doch nur "nice to have" wäre...

AccessModi

Hallo Mjay
im Grunde ist das alles kein Problem wenn bei dir alles nur über Formulare läuft.
Da ist das Accessfenster wirklich sinnlos wenn man an dem Aufbau nichts ändern muss.
Das was du suchst ist glaube ich das hier:

Private Sub btn_ausblenden_Click()
    Dim hWindow As Long
    Dim nResult As Long
    Dim nCmdShow As Long
    hWindow = Application.hWndAccessApp
    nCmdShow = SW_HIDE
    nResult = ShowWindow(ByVal hWindow, ByVal nCmdShow)
    Call ShowWindow(Me.hwnd, SW_NORMAL)
End Sub

Private Sub btn_einblenden_Click()
    Dim hWindow As Long
    Dim nResult As Long
    Dim nCmdShow As Long
    hWindow = Application.hWndAccessApp
    nCmdShow = SW_NORMAL
    nResult = ShowWindow(ByVal hWindow, ByVal nCmdShow)
    RunCommand acCmdAppMaximize
End Sub


Was die meisten zwar beachten ist das alle Formulare auf PopUp "Ja" gestellt werden müssen, aber sie vergessen Gebunden auch auf "Ja" zu stellen.
Deswegen sind bei dir die andere Formulare nicht zu öffnen gewesen.

Achte auch darauf das du Access mit 'Quit' auf dem letzten Formular beenden kannst,
sonst musst du immer über den Taskmanager gehen.

Mein Tip: Auf dein Startform einen Quit zum beenden von Access einbauen & vieleicht ein Button wo du zu einem Formular kommst wo du die Sub´s aufrufen kannst.


DF6GL

Hallo,

wobei hier noch die Deklaration der API-Funktion fehlt:

Im einem allgemeinen Modul:

Option Compare Database
Option Explicit
Public Const SW_HIDE = 0
Public Const SW_NORMAL = 1
Public Const SW_SHOWMINIMIZED = 2
Public Const SW_SHOWMAXIMIZED = 3


Public Declare Function apiShowWindow Lib "user32" _
Alias "ShowWindow" (ByVal hwnd As Long, _
ByVal nCmdShow As Long) As Long




und als Aufruf ähnlich:


Private Sub Verstecken_Click()
apiShowWindow Application.hWndAccessApp, SW_HIDE  'Access-Fenster ausblenden
apiShowWindow Me.hwnd, SW_NORMAL   'Formular einblenden
End Sub

Private Sub Einblenden_Click()
    apiShowWindow Application.hWndAccessApp, SW_SHOWMAXIMIZED
'Access-Fenster maximiert einblenden

End Sub

Stefan Kühnen

Hallo,

ich habe das Problem, dass beim Einblenden des Access-Fensters die Ribbons und die Statusleiste nicht wieder auftauchen. Hatte jemand das Problem schon und evtl. eine Lösung dafür?

Grüße
Stefan Kühnen

Stefan Kühnen

Hab's herausgefunden!

Zuerst muss das Fenster minimiert werden, dann versteckt.

beim Wiederanzeigen zuerst nur anzeigen, dann maximieren.

Grüße
Stefan Kühnen