JP1-Kreator form danych

advertisement
Języki programowania 1
Kreator form
Piotr Górczyński
20/09/2003
1
Wstęp
Kreator form danych służy do stworzenia formy,
która umożliwia edycję danych. Programista definiuje
tylko źródło danych i typ formy, a kreator tworzy
graficzną formę oraz procedury jej obsługi.
20/09/2003
2
Krok 1 - Dodanie formy do projektu
1. Z menu Project wybieramy polecenie Add form
2. Z okna dialogowego, które się pojawi wybieramy z
zakładki New ikonę VB Data Form Wizard i
naciskamy Open
20/09/2003
3
Krok 2 - Skorzystanie z gotowego profilu
 Stworzone formy
danych można zapisać
w profilu. Ponieważ
dodajemy formę po raz
pierwszy, to jeszcze nie
mamy żadnych form
danych zapisanych,
więc naciskamy
przycisk Next.
20/09/2003
4
Krok 3 - Sposób definicji połączenia z bazą
danych
 Access
Połączenie będzie
zdefiniowane za
pomocą ścieżki do pliku
bazy danych MS Access
 Remote (ODBC)
Połączenie będzie
zdefiniowane za
pomocą Data Source
Name (DSN)
wskazującego bazę
danych zdefiniowanych
w źródłach ODBC.
Dzięki temu forma może
być podłączona do
dowolnej bazy danych,
która została
zdefiniowana w ODBC.
20/09/2003
5
Krok 4 - Wybranie bazy danych
W zależności od sposobu definicji
połączenia wybranego w kroku
poprzednim:
 Access
 Pokaże się okno dialogowe, w którym
musimy wpisać lub wskazać za
pomocą przycisku Browse ścieżkę i
plik bazy MS Access
UWAGA: Połączenie może nie działać
dla nowych wersji MS Access. Należy
wtedy zdefiniować źródło w ODBC
(patrz prezentacja JP1-Laczenie z
baza danych.ppt).
 Remote (ODBC)
 Pokaże się okno dialogowe, w którym
musimy wybrać już zdefiniowane
DSN, lub zdefiniować źródło ODBC
wpisując odpowiednie informacje do
pól tekstowych Database, Driver i
Server.
20/09/2003
6
Krok 5 - Nazwa i wygląd formy oraz sposób
zaprogramowania procedur jej obsługi
 W polu What name...
wpisujemy nazwę formy
(zwyczajowa konwencja
frmNazwa)
 W liście Form Layout
wybieramy wygląd formy:
 Single record - na formie
będzie tylko pojedynczy rekord
 Grid - na formie będzie arkusz
rekordów
 Master/detail - na formie
będzie jeden rekord z tabeli
master i arkusz rekordów
powiązanych z tabeli detail
 W grupie Binding Type
wybieramy ADO Code, dzięki
czemu będą jawnie stworzone
wszystkie procedury obsługi
formy i będzie można je w
razie potrzeby zmieniać
20/09/2003
7
Krok 6 - Źródło rekordów i pola
 Z listy rozwijanej Record
Source wybieramy tabelę, z
której mają być pobierane
rekordy
 Dostępne pola pokazują się w
liście Available Fields
 Za pomocą strzałek > i >>
przenosimy do listy Selected
Fields wybrane pola, które
mają być pokazane na formie
 UWAGA! Jeżeli w poprzednim
kroku wybrano wygląd formy
Master/Detail, to okno z
definicją źródła rekordów i pól
pokaże się dwa razy najpierw dla tabeli Master, a
potem Detail
20/09/2003
8
Krok 7 - Przyciski
 W tym kroku należy
odznaczyć przyciski,
które nie mają się
pokazywać na formie.
Ich funkcja jest
następująca:
Add - dodaj rekord
Edit - edytuj rekord
Delete - usuń rekord
Refresh - odśwież
Close - zamknij formę
20/09/2003
9
Krok 8 - Zapisanie ustawień w pliku Profile
 Jeśli nie chcemy
zachowywać ustawień
naciskamy przycisk Next
 Ustawienia bieżącej formy
można zapisać w pliku
nazywanym Profile. Dzięki
temu jeśli będziemy chcieli
stworzyć podobną formę,
będzie można z pliku
Profile skorzystać w kroku
2, wtedy wszystkie
ustawienia będą takie
same jakie wybraliśmy dla
bieżącej formy
20/09/2003
10
Krok 9 - Zakończenie
 Po dodaniu formy do projektu i
zakończeniu pracy kreatora
VB informuje nas oknem
dialogowym. Naciskamy OK.
20/09/2003
11
Plik formy
 Domyślnie plik formy przyjmuje taka samą nazwę,
jaką wprowadziliśmy dla formy w kroku 5. Na rysunku
widać formę frmWydawnictwa i jej plik w oknie
projektu frmWydawnictwa.frm
20/09/2003
12
Modyfikacja sposobu połączenia ze źródłem
danych
 Sposób połączenia z
bazą danych jest
zdefiniowany w
procedurze Form_Load()
(patrz KOD #1)
 Jeżeli połączenie jest
zdefiniowane globalnie
dla całego programu na
przykład w
frmMain.Connection, to
KOD #1 należy przerobić
do postaci pokazanej w
KOD #2. Przerobienie
polega na:
 usunięciu definicji
połączenia do bazy
danych
 zmiany połączenia w
zestawie danych
adoPrimaryRS
'KOD #1
Private Sub Form_Load()
Dim db As Connection
Set db = New Connection
db.CursorLocation = adUseClient
db.Open "PROVIDER=MSDASQL;dsn=SOB2;uid=;pwd=;"
Set adoPrimaryRS = New Recordset
adoPrimaryRS.Open "select Wydawnictwo from Wydawnictwa",
db, adOpenStatic, adLockOptimistic
Set grdDataGrid.DataSource = adoPrimaryRS
mbDataChanged = False
End Sub
'KOD #2
Private Sub Form_Load()
Set adoPrimaryRS = New Recordset
adoPrimaryRS.Open "select Wydawnictwo from Wydawnictwa",
frmMain.Connection, adOpenStatic, adLockOptimistic
Set grdDataGrid.DataSource = adoPrimaryRS
mbDataChanged = False
End Sub
20/09/2003
13
Literatura
 www.vba.matrix.pl
 vb4all.canpol.pl
20/09/2003
14
Download