Warsztat 4: Dynamiczny "Layout".

dynamicLayout.zip
Autor: Krzysztof Kała
Baza w formacie MsAccess 2003
39kB, 19-11-2008

Opis:

Przykład w dość zgrabny sposób pozwala sobie poradzić
z niedogodnością Access'a, która mnie irytowała od samego początku.

Chodzi o to, że rozmiar i pozycja kontrolek na formularzach są
statyczne. Szczególnie irytujące jeżeli pewien grupujący formularz
zawiera podformularze ciągłe - wtedy aż się prosi żeby rozmiar
podformularza dostosowywał się do rozmiaru formularza nadrzędnego
(chociaż w pionie, żeby wyświetlić więcej recordów).

W załączonym przykładzie posłużyłem się klasą (choć wcześniej
mechanizm ten zaimplementowałem bez użycia klas), która raz
zaimplementowana łatwo daje się wykorzystać w wielu formularzach.

Umożliwia ona zarówno zmianę rozmiaru jak i pozycji kontrolek
(dlatego można np. "zadokować", przyciski do prawej (lub dolnej)
krawędzi)

Jeszcze jedna drobna uwaga:
oczywiście bardziej eleganckie jest zastosowanie kolekcji zamiast
tablicy:

Private atypLayout() As udLayout
'i pozniejsze wywolywanie
ReDim Preserve atypLayout(intLCount)
ale chodziło mi o max. prostotę, żeby pokazać istotę problemu
i rozwiązania (dlatego tez brak obsługi błędów, zamykanie obiektu
itp.)


Pozdrawiam
Krzysztof Kała