Primjeri koda izbornika Vb6 datotečnog sustava. Premještanje, kopiranje i brisanje datoteka

8. SPREMA I ČITANJE INFORMACIJA

Kako biste osigurali da se svi podaci stvoreni u memoriji ne izgube nakon dovršetka programa, morate biti u mogućnosti spremiti podatke na svoj tvrdi disk. Inače će sve informacije nestati bez traga. Podaci se mogu pohraniti i čitati na razne načine. Za rad s informacijama različitih veličina i formata možete koristiti binarne i tekstualne datoteke. Za pohranjivanje malih količina informacija možete koristiti Windows registar. I za najsloženije zadatke mudro je koristiti baze podataka.

8.1. Otvaranje datoteka pomoću operatora "Otvoren "

Datoteka je imenovano područje bilo kojeg vanjskog uređaja za pohranu. Podaci "žive" u memoriji računala, a datoteke žive na tvrdom disku. Program ne radi izravno s datotekama, već koristi operativni sustav kao posrednika.

Postoje dvije vrste naziva datoteka: puni - osim naziva datoteke, naznačena je i lokacija datoteke na vanjskom mediju (na primjer, “C:\Program Files\Microsoft Visual Studio\VB98\VB 6.EXE" ) i kratko - samo naziv datoteke (VB 6.EXE ). Ako lokacija datoteke nije navedena, ona će se pretraživati ​​u trenutnoj mapi, prema zadanim postavkama u mapi u kojoj se nalazi vaša aplikacija. Neposredan naziv datoteke sastoji se od dva dijela: stvarnog jedinstvenog naziva datoteke i njenog proširenja. Sam naziv identificira datoteku, a ekstenzija obično označava format datoteke ili kojim je programom stvorena.

Prije nego počnete raditi s datotekom, morate pitati operativni sustav pokazivač (deskriptor) datoteka. Da biste ga dobili, koristite funkciju "FreeFile". Zatim se pomoću operatora "Otvori" ovaj pokazivač povezuje s potrebnom datotekom. Tek nakon toga program će moći raditi s njim. Sintaksa za otvaranje datoteke je sljedeća:

'dobite besplatni pokazivač datoteke i dodijelite ga varijabli

FileHandle% = FreeFile

'otvorite datoteku

Otvori FilePath_

Kao [#]FileHandle%

...(rad s datotekom)

Zatvori [#]FileHandle

· FileHandle % – varijabla koja pohranjuje pokazivač datoteke;

· FreeFile – naziv funkcije koja vraća pokazivač datoteke;

· Otvori – naziv operatera;

· FilePath – puno ime datoteke;

· Za – ključna riječ iza koje slijedi opis načina pristupa datoteci;

· Način – način pristupa datoteci (vidi tablicu 15);

Tablica 15

Načini pristupa datotekama

Načini pristupa

Opis

Dodati

Dodavanje podataka na kraj postojeće tekstualne datoteke. Ako datoteka ne postoji, bit će kreirana

Binarni

Otvaranje datoteke u binarnom načinu rada, tj. kao skup bajtova. Ako datoteka ne postoji, ali će biti stvorena

Ulazni

Otvaranje datoteke za čitanje u tekstualnom formatu

Izlaz

Otvorite datoteku za pisanje tekstualne datoteke. U tom će slučaju sve stare informacije biti izbrisane. Ako datoteka ne postoji, ali će biti stvorena

Slučajno

Otvaranje datoteke u načinu nasumičnog pristupa. Ovaj način se koristi za rad s jednostavnim zapisima. Ako datoteka ne postoji, ali će biti stvorena

· Pristup – izborna ključna riječ nakon koje slijedi opis vrste pristupa;

· AccessType – opis vrste pristupa:

· Čitati – čitanje;

· Pisati – snimati;

· Read Write – čitanje i pisanje.

Bilješka

S načinima pristupa Dodavanje i Izlaz dostupna je samo vrsta pristupa Pisanje, s Unosom samo čitanje, a s Binarnim i Nasumičnim sva tri tipa pristupa su dostupna.

· LockType je izborni parametar koji određuje mogu li drugi programi koristiti ovu datoteku dok vaš program radi s njom. Obično je povezan s radom na mreži (vidi tablicu 16).

Tablica 16

Moguće vrijednosti za parametar LockType

Značenje

Opis

Podijeljeno

Svi korisnici s potrebnim pravima imat će puni pristup datoteci

Zaključaj Čitaj

Čitanje datoteke je blokirano, ali je pisanje dopušteno

Zaključaj Pisanje

Pisanje u datoteku je blokirano, ali je čitanje dopušteno

Zaključaj Čitanje Pisanje

Zabranjeno je i čitanje i pisanje

· Kao što je ključna riječ iza koje slijedi pokazivač datoteke.

· # je simbol koji označava da je vrijednost koja slijedi pokazivač datoteke.

· Len je izborna ključna riječ koju mora pratiti parametar koji određuje duljinu unosa.

· CharInBuffer % - duljina zapisa za datoteku otvorenu u načinu slučajnog pristupa (Random).

· Close je naredba koja zatvara datoteku povezanu s navedenim rukovateljem.

Važno je zatvoriti datoteku kada završite s radom s njom. Naredba "Zatvori" oslobađa pokazivač datoteke i povezano područje memorije.

Kada radite s datotekom, odnosno kada čitate iz nje, određivanje kraja datoteke je vrlo važno. Može se definirati pomoću funkcije EOF (End Of File):

EOF(FileHandle)

· EOF – naziv funkcije;

· FileHandle je pokazivač na datoteku čiji se kraj utvrđuje.

Funkcija vraća True ako je dosegnut kraj datoteke, inače vraća False.

8.2. Čitanje i pisanje u tekstualnu datoteku

Tekstualna datoteka se otvara u pristupnom modu “Ulaz”, “Izlaz” ili “Dodaj” (vidi tablicu 15). Osobitost ovog načina je da radi samo s određenim znakovima za ispis. Beskorisno je raditi sa servisnim simbolima.

Za snimanje informacija koristite dva operatora "Ispis" i "Pisanje", čija je sintaksa sljedeća:

Ispis #FileHandle%, VarBuffer [;]

Napišite #FileHandle%, VarBuffer [;]

· Print/Write – ključne riječi operatora.

· #FileHandle % - pokazivač na datoteku u koju će biti smješteni podaci.

· VarBuffer – vrijednost koja će biti zapisana u datoteku.

· ; – izborni parametar koji se koristi prilikom pisanja u tekstualnu datoteku, znači da će sljedeća vrijednost biti zapisana u isti redak, a ako ga nema, u sljedeći.

Za čitanje informacija iz datoteke upotrijebite operatore "Unos" i "Unos linije". Sintaksa je slična jedna drugoj:

Linijski unos #FileHandle%, VarBuffer

Unos #FileHandle%, VarBuffer

· Line Input / Input – ključne riječi operatora.

· #FileHandle % - pokazivač na datoteku iz koje će biti pročitane informacije.

· VarBuffer – varijabla u koju će se učitavati podaci.

Razlika između operatora "Line Input" i "Input" je u tome što je prvi namijenjen samo tekstualnim datotekama, a drugi - bilo kojim. U slučaju tekstualnih datoteka, “Input” čita podatke u jednom redu do prvog graničnika (za tekstualne podatke razdjelnik je “,” (zarez), a za numeričke podatke - “” (razmak) i “,”) , a "Line Input" čita cijeli red odjednom, zanemarujući sve graničnike.

Bilješka

U Visual Basic nema načina za kontrolu formata prethodno stvorenih datoteka. Stoga se simbol "2" može čitati kao odgovarajući broj i obrnuto.

8.3. Rad s binarnim datotekama

Datoteke se otvaraju u binarni format operator “Otvori” u “Binarni” način rada. Posebnost ovog načina rada je da je rad s datotekom fokusiran isključivo na određene bajtove. Budući da Visual Basic može izravno adresirati željeno mjesto u datoteci, ovaj se način također naziva − način izravnog pristupa. Još jedna značajka ovog načina je mogućnost istovremenog pisanja i čitanja informacija u različite dijelove datoteke bez ponovnog otvaranja. Zapisivanje u datoteku otvorenu u binarnom načinu rada vrši se pomoću sljedeće sintakse:

Stavite #FileHandle%, , NameVar

· Put – naziv operatera snimanja informacija.

· RecNumber – broj bajta datoteke u koju će biti upisan podatak (neobavezni parametar).

· NameVar je varijabla čiji će sadržaj biti upisan u datoteku.

Čitanje informacija iz datoteke u binarnom načinu rada vrši se pomoću sljedećeg operatora:

Dobijte #FileHandle%, , NameVar

· Get – naziv operatera snimanja informacija.

· FileHandle % - rukovanje datotekom.

· RecNumber – broj bajta datoteke iz koje će se očitati podaci (neobavezni parametar).

· NameVar – naziv varijable u koju će se smjestiti očitane informacije.

Budući da je binarni način rada fokusiran na bajtove informacija, prilikom čitanja iz datoteke, varijabla međuspremnika mora imati strogo definiran tip: ili "Byte", tada će se čitati numerička vrijednost bajta ili znak fiksne duljine jednog znaka, tada će se bajt čitati kao znak, ANSI, čiji kod odgovara veličini bajta. Ovaj znak može biti čak i kontrolni znak, što se ne može postići u slučaju tekstualnih datoteka.

Bilješka

U nedostatku parametra “RecNumber”, pisanje ili čitanje informacija će se dogoditi u sljedećem bajtu datoteke nakon onog s kojim se prethodno radilo.

8.4. Grafička manipulacija

Također možete spremati i izdvajati grafičke slike iz datoteka. Da biste izvukli sliku iz datoteke bitmape ili ikone i dodijelili je svojstvu "Picture" kontrola "PictureBox" i "Image", koristite funkciju "LoadPicture()" sa sljedećom sintaksom:

ImageCtrl.Picture = LoadPicture(FilePath)

· ImageCtrl – naziv kontrole prozora slike, kontrole slike ili obrasca;

· LoadPicture – naziv funkcije;

· FilePath – puni naziv datoteke.

SavePicture ImageCtrl .Picture, FilePath

· SavePicture – naziv operatera;

· ImageCtrl – naziv kontrole prozora slike, kontrole slike ili obrasca;

· Slika – naziv svojstva objekta odgovornog za sliku;

· FilePath – puni naziv datoteke koji označava njezino mjesto na disku.

8.5. Rad s podacima u registru

Windows registar se može koristiti za pohranjivanje malih dijelova informacija u znakovnom formatu. Visual Basic ima četiri postupka pomoću kojih mu možete pristupiti. Vrlo su jednostavni za korištenje, ali imaju jedan glavni nedostatak: možete pristupiti samo podacima iz određenog ključa registra: “MyComputer\HKEY_CURRENT_USER\Software\VB and VBA Program Settings”. Da biste pristupili drugim odjeljcima registra, morate koristiti posebne funkcije "Win ​​32 API".

Da biste dobili vrijednost postavke iz odjeljka Visual Basic u registru sustava Windows, morate upotrijebiti sljedeću funkciju:

MyString = GetSetting(VBKeyName, Section, Key [,Default])

· MyString – niz za pohranu vrijednosti koju vraća funkcija;

· GetSetting – naziv funkcije.

· VBKeyName je vrijednost niza koja je naziv internog VB/VBA potključa.

· Ključ je vrijednost niza koja predstavlja naziv parametra u odjeljku.

· Zadano – izborni argument, čija će vrijednost biti vraćena u slučaju greške (nedostajući parametar).

Da biste pohranili vrijednost u Windows registar, koristite sljedeću izjavu:

SaveSetting VBKeyName, Section, Key, MyString

· SaveSetting – naziv operatera.

· MyString je string varijabla u koju će se smjestiti pronađena vrijednost.

Za dobivanje niza iz registra koji sadrži sve vrijednosti parametara iz određenog potključa, upotrijebite sljedeću funkciju:

MyVariant = SetAllSettings(VBKeyName, Section)

· MyVariant je niz vrijednosti tipa "Variant" koje vraća funkcija.

· SetAllSettings – naziv funkcije.

· Odjeljak – vrijednost niza koja predstavlja odjeljak ili pododjeljak određene aplikacije.

Za uklanjanje cijelog odjeljka parametara upotrijebite naredbu sa sljedećom sintaksom:

DeleteSetting VBKeyName, Section, Key

· DeleteSetting – naziv operatera.

Test pitanja za samotestiranje

  1. Kako možete dugoročno pohraniti neke informacije?
  2. Što je datoteka?
  3. Koja imena datoteka znate?
  4. Navedite sintaksu operatora "Otvori". Objasnite namjenu njegovih parametara.
  5. Kako više aplikacija može dijeliti pristup jednoj datoteci u isto vrijeme?
  6. Kako utvrditi da su podaci u datoteci iscrpljeni?
  7. Zašto se preporučuje da ga zatvorite nakon rada s datotekom?
  8. U čemu vidite razliku između načina tekstualnih i binarnih datoteka?
  9. Kako se podaci čitaju i zapisuju u načinu tekstualne datoteke?
  10. Kako se podaci čitaju i zapisuju u načinu binarne datoteke?
  11. Koja je razlika između operatora "Ispis" i "Pisanje" pri radu s datotekama?
  12. Koja je razlika između operatora "Input" i "Line Input" pri radu s datotekama?
  13. Kako možete raditi s grafičkim podacima?
  14. Koji su osnovni principi rada s registrom sustava Windows?

Svaki program mora podatke spremati na disk i čitati ih s diska. To je potrebno, na primjer, za spremanje postavki programa; malo je vjerojatno da će se korisniku svidjeti program, koji će se morati ponovno konfigurirati sljedeći put kada se pokrene.

U ovom ćemo članku govoriti o radu s tekstualnim datotekama pomoću Visual Basica.

Deskriptor datoteke

Za rad s datotekama operacijski sustav koristi I/O kanale, tj. svaki otvorena datoteka ima svoj broj.

U Visual Basicu postoji funkcija FreeFile, koji vraća broj slobodnog kanala koji se može koristiti za rad s datotekom. Ako nema slobodnih kanala, javlja se greška.

FreeFile[(RasponBroja) ]

RasponBroja-neobavezni parametar koji vam omogućuje definiranje raspona vrijednosti besplatnih kanala if RasponBroja= 0 (zadano), tada se broj kanala vraća iz raspona 1 - 255, a ako je 1, onda iz raspona 256 - 511.

MyFile = Besplatna datoteka "Varijabla MyFile je dodijeljena besplatni kanal a sada se može koristiti za rad s datotekama

Rad s tekstualnim datotekama

Najčešće se susrećete s tekstualnim datotekama. Tekstualne datoteke sastoje se od skupa znakova ASCII (Američki standardni kod za razmjenu informacija).

Prije nego počnete pisati/čitati podatke, datoteku je potrebno otvoriti; to se radi pomoću operatora Otvoren (Naziv datoteke) Za As #Broj datoteke, Gdje:

Ulazni- otvoriti datoteku za čitanje, ako datoteka ne postoji javlja se greška;

Izlaz- za pisanje, ako datoteka ne postoji, bit će kreirana, a ako datoteka postoji, bit će prebrisana;

Dodati- za dodavanje, ako datoteka ne postoji, bit će kreirana, a ako datoteka postoji, tada će se podaci dodati na kraj datoteke.

Čitanje tekstualnih datoteka može se obaviti na dva načina: čitati znak po znak, za to koristite funkciju Ulazni(Broj_pročitanih_znakova, #Broj datoteke) i redak po redak, funkcija se koristi za to Linijski unos #Broj datoteke, Gdje_čitati.

Zatamni moju datoteku

Dim S kao niz "Varijabla za pohranu pročitanih podataka

MyFile = Besplatna datoteka

Otvori("C:\TEST.txt") za unos kao #MyFile

Linijski unos #MyFile, S "Pročitajte prvi red iz datoteke TEST.TXT u varijablu S

Zatamni moju datoteku "Deklarirajte varijablu za besplatnu datoteku

Dim i kao cijeli broj "Varijabla za petlju

Dim tS kao niz "Varijabla za čitanje nizova

Dim S kao niz "Varijabla za pohranu konačnih podataka

MyFile = Besplatna datoteka "Dodjeljivanje besplatnog kanala za rad s datotekama

"Otvorite datoteku TEST.TXT za čitanje

Za i = 1 do 5

Linijski unos #MyFile, tS "Čitanje datoteke TEST.TXT red po red

Ako je i => 5 Tada je S = tS "Ako je peti redak, pohranite ga u varijablu S

Sljedeći i

Zatvori #MyFile "Zatvori datoteku

Dim MyFile "Deklarirajte varijablu za besplatnu datoteku

Dim S As String "Varijabla za pohranu pročitanih podataka

MyFile = Besplatna datoteka "Dodjeljivanje besplatnog kanala za rad s datotekama

Otvori("C:\TEST.txt") za unos kao #MyFile "Otvorite datoteku TEST.TXT za čitanje

S = Unos $(LOG(1), 1) "Pročitajte cijelu datoteku u varijablu S

Zatvori #MyFile "Zatvori datoteku

Postoje operatori za pisanje u datoteku Ispis #Broj datoteke, Podaci I Napiši #Broj datoteke, Podaci. Jedina razlika između ovih operatora je ta Pisati zapisuje podatke pod navodnicima, i Ispis bez navodnika.

Sljedeći kod će stvoriti novu datoteku TEST.TXT na disku C:\ i u nju napisati dva retka, prvi bez navodnika, a drugi s navodnicima:

Zatamni moju datoteku "Deklarirajte varijablu za besplatnu datoteku

MyFile = Besplatna datoteka "Dodjeljivanje besplatnog kanala za rad s datotekama

Otvori("C:\TEST.txt") za izlaz kao #MyFile "Otvorite datoteku TEST.TXT za pisanje

Print #MyFile, "Ovaj redak je napisao operator Print, bez navodnika je..."

Napišite #MyFile, "Ovaj je redak napisao operator Write, pod navodnicima je..."

Zatvori #MyFile "Zatvori datoteku

To je sve. Kao što ste vjerojatno već shvatili, operator se koristi za zatvaranje datoteke Zatvoriti #Broj datoteke, pri čemu, # Broj datoteke nije potrebno naznačiti.

Članak je malo grub, ali će biti koristan programerima početnicima. Sljedeći put ću govoriti o radu s binarnim datotekama.

Windows

Cilj rada: Učenje i korištenje VB 6 jezičnih operatora za rad s datotekama različite vrste: sekvencijalne (tekstualne) datoteke, datoteke s nasumičnim pristupom, binarne datoteke. Istraživanje i korištenje alata UobičajenDijalog za otvaranje i spremanje datoteka, odabir fonta i boje te korištenje objekta Međuspremnik za pohranu fragmenata teksta, koristeći primjer izrade jednostavnog uređivača teksta.

Kontrolna pitanja:

1. Na koje načine možete otvoriti tekstualnu datoteku? Kako zatvoriti tekstualnu ili bilo koju drugu otvorenu datoteku?

2. Kako se podaci zapisuju u tekstualnu datoteku koja je otvorena za pisanje? Koja je razlika između naredbi Write i Print?

3. Kako se podaci čitaju iz otvorenog za čitanje tekstualna datoteka? Po čemu se operatori za unos i linijski unos razlikuju jedan od drugog? Koja se funkcija može koristiti za čitanje određenog broja znakova iz datoteke? Kako pročitati sve znakove datoteke?

4. Što je vrsta podataka korisnika i kako se ovaj koncept koristi pri radu s datotekama s nasumičnim pristupom ( raf)?

5. Korištenje kojih operatora iz datoteke raf zapisi se također čitaju u datoteku raf Upisuju li se novi unosi?

6. U koju svrhu se određuje i koristi indeks pri radu s datotekom? raf?

7. Koje su značajke korištenja binarnih datoteka? Kako se otvaraju? Kako se vrši čitanje iz binarne datoteke i pisanje u binarnu datoteku?

8. Kako koristiti kontrolu UobičajenDijalog učitati sadržaj tekstualne datoteke u tekstualno polje? Kako mogu koristiti istu kontrolu za spremanje uređenog teksta u tekstualnu datoteku?

9. Kako koristiti kontrolu UobičajenDijalog za preuzimanje sadržaja datoteke rtf u polju BogatiTextbox? Kako koristiti istu kontrolu za spremanje uređenog teksta u datoteku rtf?

10. Kako koristiti kontrolu UobičajenDijalog za promjenu vrijednosti parametara fonta i za promjenu boje teksta u prozoru Textbox(ili odabrani dio teksta u prozoru BogatiTextbox)?

Primjer 7.1. Razmotrite aplikaciju koja demonstrira pisanje u tekstualnu datoteku (i čitanje iz tekstualne datoteke) “podataka o zaposleniku” - retke od kojih svaki sadrži identifikacijski broj, puno ime, datum rođenja i mjesto rođenja zaposlenika. Redovi tvore tablicu koju će na obrascu na ekranu oponašati 4 kontrole Combo Box (Slika 7.1), tvoreći niz Comb(i) objekata, čije svojstvo Style ima vrijednost 1 – SimpleCombo.

Odaberite liniju za brisanje", vbExclamation

Comb(j).RemoveItem i

'Umetnuti novi unos na stol:

Privatni podmnuInsert_Click()

i% = Comb(0).ListIndex

Ako ja< 0 Then

MsgBox "Označi redak koji treba umetnuti prije njega", vbExclamation

Comb(0).AddItem InputBox("Unesite broj"), tj

Comb(1).AddItem InputBox("Unesite svoje ime"), tj

Comb(2).AddItem InputBox("Unesite svoj rođendan."), tj

Comb(3).AddItem InputBox("Unesite mjesto rođenja."), tj

' Promjena unosa u tablici:

Privatni podmnuUpdate_Click()

i% = Comb(0).ListIndex

Ako ja< 0 Then

MsgBox "Istakni promjenjiv niz", vbUsklik

Comb(0).List(i) = InputBox("Unesite broj", Comb(0).List(i))

Comb(1).List(i) = InputBox("Unesite svoje ime", Comb(1).List(i))

Comb(2).List(i) = InputBox("Unesite svoj rođendan.", Comb(2).List(i))

Comb(3).List(i) = InputBox("Unesite mjesto rođenja.", Comb(3).List(i))

' Brisanje cijele tablice:

Privatni pod mnuClear_Click()

' Popunjavanje tablice informacijama iz tekstualne datoteke:

Privatni podmnuLoad_Click()

Otvorite "person. txt" za unos kao #1

Ulaz #1, numb, fio, bdate, bloc

Comb(0).AddItem numb

Comb(1).AddItem fio

Comb(2).AddItem bdate

Comb(3).AddItem blok

' Zapisivanje informacija iz tablice u tekstualnu datoteku:

Privatni pod mnuSave_Click()

N% = Comb(0).ListCount

Otvorite "person. txt" za izlaz kao #1

Za i = 0 do N - 1

numb = Val(Comb(0).List(i))

fio = Comb(1).List(i)

bdate = CDate(Comb(2).List(i))

blok = Comb(3).List(i)

Napišite #1, numb, fio, bdate, bloc

' Gašenje aplikacije:

Privatni pod mnuExit_Click()

Primjer 7.2 . Razmotrite aplikaciju koja demonstrira korištenje kontrola UobičajenDijalog za otvaranje i spremanje datoteke, za odabir fonta i boje i za uređivanje teksta.

Format datoteke TXTće se učitati u tekstualno polje (lijevo polje na sl. 7.2), a format datoteke RTF- na terenu BogatiTextbox(desna margina na sl. 7.2).

objekt

Klasa

objekt

Vlasništvo

objekt

Vrijednost imovine

“Opće ploče

dijalog"

Otvori/Spremi kao karticu

Kartica Font

Kartica boja

Tablica ne prikazuje svojstva naredbi izbornika Font, Boja I Uredi. Dolje je kod procedure također samo za naredbe izbornika Datoteka (Otvoren, Uštedjeti I UštedjetiKao). Sastavljanje koda za ostale naredbe izbornika je tema 2. zadatka ovog rada.

Privatni pod mnuOpen_Click()

CommonDialog1.ShowOpen

F$ = CommonDialog1.FileName

If Right(F, 3) = "rtf" Onda

RichTextBox1.LoadFile F

ElseIf Right(F, 3) = "txt" Zatim

Otvorite F za unos kao #1

S$ = Unos (N, 1)

Privatni pod mnuSave_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

Privatni pod mnuSaveAs_Click()

CommonDialog1.ShowSave

F$ = CommonDialog1.FileName

RichTextBox1.SaveFile F, rtfRTF

Tijekom ovog rada student mora riješiti 2 zadatka.

Vježba 1. U procesu izrade zadatka studenti svladavaju mogućnosti dostupne u VB 6 za rad s datotekama s nasumičnim pristupom ( RAFslučajanpristupdatoteka).

Za zadanu tablicu baze podataka deklarira se korisnički tip podataka, deklarira se varijabla ovog tipa (uputa, str. 108–112), procedure koje koriste varijablu korisničkog tipa se kompiliraju i ispravljaju pogreške.

Konkretno, implementirane su procedure za naredbe izbornika Zapiši u datotekuRAF I Čitaj iz datotekeRAF. Kao u primjeru 7.1, niz objekata koristi se za uređivanje podataka KombinacijaKutija i jelovnik Uredi s pet naredbi podizbornika: Dodaj bilješku, Izbriši unos, Umetnite unos, Uredi unos, Čisti stol.

opcija 1.

Deklarirajte prilagođeni tip podataka za tablicu “Car” (Tablica 7.1) baze podataka “Car Service”.

automobil

automobil

neispravnosti

Donja linija tablice 7.1 prikazuje vrste polja.

opcija 2.

Deklarirajte prilagođeni tip podataka za tablicu "Kvarovi" (tablica 7.2) baze podataka "Autoservis".

neispravnosti

Ime

neispravnosti

Cijena

Donja linija tablice 7.2 prikazuje vrste polja.

Koristeći Primjer aplikacije 7.1 kao predložak, organizirajte unos i uređivanje podataka za prikazanu tablicu, pisanje tih podataka u datoteku s nasumičnim pristupom i čitanje podataka iz datoteke s nasumičnim pristupom. Kao u primjeru 7.1, ove radnje su implementirane kao operacije naredbi izbornika prikazanih na sl. 7.1.

Zadatak 2. Tijekom zadatka studenti dodaju nove značajke primjeru aplikacije 2 koje omogućuju da se aplikacija promatra kao jednostavan uređivač teksta.

opcija 1 UobičajenDijalog implementirati naredbe izbornika Font I Boja(s podizbornikom Boja lika I Boja pozadine). Pomoću ovih naredbi trebali biste moći odabrati font (njegov naziv, stil i veličinu) za odabrani fragment teksta u prozoru BogatiTextbox, kao i odabir boje znakova odabranog fragmenta i odabir boje pozadine cijelog prozora.

Bilješka: Prilikom postavljanja objekta UobičajenDijalog Za odabir fonta pomoću svojstva (Prilagođeno), svakako postavite vrijednost svojstva Zastavice na 1, 2 ili 3 (pogledajte priručnik, stranica 183).

opcija 2. Korištenje kontrole UobičajenDijalog implementirati naredbe izbornika Uredi(podizbornik Kopirati, Izrezati I Zalijepiti), čija je svrha kopiranje ili brisanje u međuspremnik odabranog fragmenta teksta, a također umetnuti na odabrano tekstualno područje sadržaja međuspremnika.

Bilješka: U međuspremnik (objekt Međuspremnik) možete koristiti metode SetText i GetText:

Međuspremnik. SetText RichTextBox1.SelText

RichTextBox1.SelText = Međuspremnik. GetText