2012-04-03 6 views
4

Ich frage mich, ob es irgendeinen Weg gibt, den Hintergrund des Zugriffs zu ändern. Das Standardgrau ist in Ordnung, aber ich möchte es in ein Bild ändern, das Anweisungen anzeigt oder was zuletzt aktualisiert wurde. Auch wenn ich einem Benutzer erlauben kann, den Hintergrund zu einem Bild seiner Wahl zu ändern, wäre das auch cool.Einen Hintergrund hinzufügen

Kann diese

+3

Paar von möglichen Lösungen für Sie - siehe http://www.lebans.com/changemdibackground.htm oder http://access.mvps.org/access/api/api0035.htm – dash

+1

Könnten Sie klären, wenn Sie sich beziehen zu einem von Ihnen erstellten Formular (oder einem anderen Objekttyp) oder dem Hintergrund hinter all diesen (sichtbar, wenn Fenster nicht maximiert sind). Ich weiß, dass Sie das erste ändern können, aber nicht sicher für das letztere. – ericosg

+0

Eigentlich möchte ich, dass es sich im Datenbankfenster befindet, das beim Öffnen der Datenbank geöffnet wird. –

Antwort

2

Ich konnte Benutzern erlauben, den Hintergrund der Datenbank zu ändern. Es funktioniert gut und es funktioniert, egal, welchen Computer sie in der Datenbank ausloggen. Ich hatte ein Problem mit Remote-Benutzern, daher habe ich ein Makro hinzugefügt, mit dem sie die Funktionalität deaktivieren können. Es funktioniert großartig. Es war ein wenig kompliziert, sich anfänglich zu trennen. Einige der folgenden Module enthalten möglicherweise mehr in ihnen enthaltenes Material als das, was für diese Frage benötigt wird. Aber hier ist, was ich es funktioniert tat:

Fügen Sie die folgenden Module zur Datenbank: modChangeMDI, SetBackgroundImage und clsCommonDialog

Link zu einer ZIP-Datei, um den Code für die oben genannten Module enthält: http://www.filedropper.com/changebackgroundimage

Sie können den Standardspeicherort festlegen, den Benutzer sehen, wenn das Dialogfeld für die Suche nach Dateien angezeigt wird. Dies befindet sich in der ThisFileToOpen-Funktion des SetBackgroundImage-Moduls.

clsCommonDialog < - verwendet, um die Datei suchen-Dialogfeld modChangeMDI < --Used zu öffnen, um das Hintergrundbild

Erstellen Sie eine Tabelle namens $ BackgroundLocation mit den folgenden Feldern. In meiner Datenbank ist dies in der Backend-Datenbank enthalten.

ID (AutoNumber, Primary Key) 
UserID (Text, Required, 250 in length, don't allow zero lengths) 
BackgroundLocation (Text, 255 in length, not required) 
DisableBackground (boolean) 

Erstellen Sie ein Makro AutoExec und eine Aktion hinzufügen, die den Code SetTheBackgroundPictureOnStartup läuft (1)

erstellen BackgroundDisableEnable Makro und eine Aktion hinzufügen, die den Code DisableEnableBackground läuft()

erstellen BackgroundSet Makro und fügen Sie eine Aktion hinzu, die den Code ausführt SetTheBackgroundPictureOnStartup (2)

Weisen Sie dann das BackgroundDisableEnable- und das BackgroundSet-Makro ihrem eigenen Menüelement zu.

Wenn die Datenbank geöffnet wird, wird AutoExec standardmäßig ausgeführt.

+0

Ich habe die gezippte Zip-Datei heruntergeladen und kurz auf den Code geschaut. Wow, ich habe nicht damit gerechnet, dass es so ist. Ich habe bemerkt, dass du alles machst, wonach ich verlangte, und dann einige. Ich bin etwas besorgt, nachdem ich die obigen Kommentare gesehen habe. Ich werde es aber in einer Übungsdatenbank versuchen. Danke, dass Sie sich die Zeit genommen haben, zu antworten. –

+0

Ok, also habe ich es ausprobiert und es hat funktioniert, ohne dass ich etwas anderes machen musste. Ich hatte Angst, dass ich damit spielen müsste, damit es funktioniert, aber ich tat es nicht. Danke für die Antwort. Ich werde es eine Woche lang versuchen und schauen, ob es ohne zu viel Leistung klappt. Ich hoffe, dass es nicht so ist, dass ich es wirklich mag und das Paar von Nutzern, dass ich es auch gezeigt habe, dass es mir gefällt. Auf ihren Maschinen habe ich keine Performance-Probleme bemerkt. –

+0

Niemand, der hinter einer Unternehmensfirewall arbeitet, wird Ihren Code sehen. Außerdem: das ist StackOverflow: Wir erwarten von den Leuten, dass sie den Code hier posten. so dass es sofort durchsuchbar und sichtbar ist ... und visuell überprüft werden kann, bevor es überhaupt kompiliert und ausgeführt wird: Es gibt möglicherweise einen Grund, warum Firewalls es nicht zulassen, dass Benutzer unbekannte und nicht geprüfte Dateien öffnen. –

4

erfolgen Um ehrlich zu sein, ich bin nicht sicher, ob dies möglich ist oder nicht, aber wenn es ist, würde ich rate Ihnen, es nicht zu tun. Warum?

  1. Benutzer werden Anweisungen unter einem Hilfemenü erwarten oder auf einem Intro splash Form
  2. Sie werden Informationen erwarten. wie das, was zuletzt aktualisiert wurde in mehr herkömmlichen Orten wie der Statusleiste
  3. Benutzer können Ihre Anwendung mit ihren Fotos personalisieren können machen Ihre Anwendung ziemlich schlecht aussehen und Ladezeiten zu erhöhen.

Nur Beratung - viel Glück damit!

+0

Obwohl ich Links zu zwei möglichen Lösungen geschrieben habe, stimme ich diesem Rat von ganzem Herzen zu - +1 – dash

+1

Ich möchte es hauptsächlich für Unterrichtszwecke tun. Um den Benutzer und das Unternehmen über alle wichtigen Änderungen zu informieren, die an der Datenbank vorgenommen wurden. Indem sie diese Information dem Hintergrund hinzufügen, würden sie es sicher sehen. Der einzige Grund, warum ich gefragt habe, ob es den Benutzern erlaubt ist, es zu tun, nehme ich an, dass sie fragen könnten, sobald sie sehen, dass ich den Hintergrund kontrollieren kann. –

+0

+1 von mir auch. Ich habe in der Vergangenheit dekorative Hintergründe ausprobiert und würde es nicht noch einmal tun. – Fionnuala

1

Sie können ein Startformular wie oben vorgeschlagen verwenden. Sie können das Startformular sogar auf einer Kommentartabelle basieren, die von den Benutzern bearbeitet werden kann und die neuesten und/oder relevanten Informationen anzeigen. Das Formular kann beim Start angezeigt und dann von den Benutzern jederzeit abgerufen werden.

In der Vergangenheit habe ich eine ? Schaltfläche auf Formulare eingefügt, die ein solches Formular auf der entsprechenden Seite öffnen.

+0

Ich habe ein Startformular, das ich in der Vergangenheit verwendet habe. Ich habe nur nach einem besseren Weg gesucht. Vielen Dank für Ihre Antwort. –

Verwandte Themen