Warsztat: Ikonka aplikacji, która nie znika po skopiowaniu bazy na inny komputer.

AppIcon.zip
Autor: Krzysztof Pozorek
Baza w formacie MsAccess 97 
54kB, 30-01-2001
Royally Free

Opis problemu:

Jedna z opcji ustawianych w menu Narzędzia/Autostart pozwala przypisać do naszej aplikacji ikonkę. Ikonka programu stanowi jego wyróżnik, swoisty znak, dlatego dobrze jest zadbać o ten element graficzny w narożniku naszej aplikacji. Niestety accessowa ikonka ma istotną wadę - ginie po skopiowaniu bazy na inny komputer. Przyczyna jest łatwa do wyjaśnienia. Ikonka nie jest osadzona w bazie, a jedynie pamiętany jest tam link do pliku ICO. Dlatego ustawiona ikonka znika po skopiowaniu bazy na inny komputer, nawet jeżeli przekopiujemy ją razem z bazą, bo trudno się spodziewać, że nowa lokalizacja będzie miała dokładnie tę samą ścieżkę dostępu.

Rozwiązanie:

Rozwiązaniem jest zapisanie ikonki do tabeli i odtwarzanie jej w razie potrzeby, gdy Access nie znajdzie jej w podanej lokalizacji. Prezentowany przykład realizuje to programowo i jest samodzielnym programem użytkowym. Ty musisz podać tylko lokalizację swojej bazy no i oczywiście wskazać plik ICO - resztę wymieniony użytek zrobi za Ciebie. Programu możesz go używać na zasadach "Royaly Free", czyli pełnej swobody.

Za pomocą programu AppIcon możesz ustawiać trwałe ikonki do baz w trakcie budowy, a także do skończonych już baz MDB, bez ręcznej grzebaniny w kodzie. O koniecznych modyfikacjach w Twojej bazie, które program AppIcon musi wykonać, zostaniesz poinformowany przed rozpoczęciem operacji.

W podobny sposób można umieszczać w bazie także inne pliki (np. BMP, WAV) i nie martwić się, że się któregoś zabraknie po przekopiowaniu bazy na inny komputer.

Krzysztof Pozorek