Sunteți pe pagina 1din 35

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

Evidena obiectivelor
turistice-Frana

Lucrare pentru examenul de obinere


a atestatului profesional la informatic

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

Evidena obiectivelor
turistice-Frana

Absol
vent: Ene Gabriela
Profesor
coordonator: Ianc Simona

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

1.Despre aplicaie
Aplicaia a fost creat pentru gestionarea interactiv
a obiectivelor turistice din Frana cu scopul de a fi un ajutor
pentru ageniile de turism care pot pstra, astfel, o eviden
exact a atraciilor turistice.

Configuraia sistemului care ar permite o rulare optim este:


( System requirements )
Sistem de operare: Windows XP SP2
Procesor: 750 MHz
Hard disk: 20MB free (se menioneaz c pentru rularea optim a
sistemului de operare vor fi necesari 200MB liberi pe partiia acestuia).
Memorie RAM: 256MB
Domeniu: Visual FoxPro 9.0
Monitor: Rezoluie 1280x1024
Configuraia minim a sistemului care garanteaz rularea programului:
( Minimum System Requirements )
Sistem de operare: Windows 98/2000/NT/XP or later
Procesor: 330 MHz or better
Hard disk: 15 MB free or more
Memorie RAM: 128MB SDRAM or better
Domeniu: Visual FoxPro 6.0 or later
Monitor: Rezoluie 800x600 or higher
Aplicaia este util pentru toi administratorii unei agenii
de turism dar i pentru cei interesai de a vizita o anumit zon
turistic. Aplicaia gestioneaz lista cu obiective a Franei, din
punct de vedere al zonei n care se afl acestea, al preului
biletelor , al programului de funcionare i al unei note ce poate
semnifica o ierarhizare a acestora. Aplicaia are o interfa
prietenoas i un meniu uor de folosit.

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

2. Documentaia de utilizare
2.1 F ORMA DE BAZ
La fiecare rulare a aplicatiei va aprea o form ce
va prezenta utilizatorului meniul cu formele cu ajutorul crora
se pot gestiona datele din baza de date a obiectivelor turistice.
Utilizatorul va putea alege forma corespunztoare efecturii
operaiunii dorite. Meniul conine urmtoarele opiuni:
Adugare : Deschide o form de unde se pot aduga datele unui obiectiv
turistic n baza de date.
Modificare: Deschide o form de unde se pot modifica datele unui obiectiv

turistic identificat dup nume.


tergere : Deschide o form de unde utilizatorul aplicaiei poate terge

datele unui obiectiv turistic din baza date.


Paris: Deschide o form ce ofer o imagine panoramic a capitalei Franei
cu posibilitatea de a putea mri, respectiv restrnge cadrul asupra acesteia.

Afiare : Aceast form permite afiarea obiectivilor turistice prin


intermediul a dou butoane: precedent i urmtor i conine dou opiuni:
Afiareingrid i ListaObiective, n funcie de ceea ce se dorete a fi afiat.
Ajutor : Permite deschiderea unui fiier HTML n care sunt postate
informaii ajuttoare privind aplicaia.

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

2.2 F ORMA A DUGARE


Forma Adugare conine 6 controale de tip TextBox
prin intermediul crora utilizatorul aplicaiei poate introduce
datele unui obiectiv turistic n baza de date. Datele sunt stabilite
prin intermediul controalelor de tip Label. Validarea pe cmpuri a
fost fcut pentru evitarea eventualelor erori ce pot aprea la
introducerea datelor.

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

2.3 F ORMA M ODIFICARE


Forma Modificare permite utilizatorului s modifice
datele unui obiectiv turistic identificat dup un nume ce este
introdus ntr-un TextBox.
Validarea
cmpului pentru numele obiectivului a fost fcut pentru evitarea
unor eventuale erori.

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

2.4 F ORMA TERGERE


Forma tergere permite utilizatorului s tearg datele unui obiectiv
turistic identificat dup un nume introdus ntr-un TextBox.
Cmpul corespunztor numelui obiectivului a fost validat pentru a se
evita eventualele erori care pot apra la introducerea datelor.

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

2.5 F ORMA A FIARE


Aceast form faciliteaz afiarea tuturor obiectivelor din baza de date prin
intermediul a dou butoane: precedent (<<) i urmtor(>>).

2.5.1

F ORMA

AFIARE N GRID

Aceast form permite vizualizarea datelor unui obiectiv ntr-un


control de tip DataGridView.

2.5.2 F ORMA L ISTA O BIECTIVE


9

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


Forma afieaz o list cu toate obiectivele, n toate modurile de
afiare: LargeIcon, SmallIcon, List, Tile, Detail. n modul Detail, fiecare
item(obiectiv) are itemi suplimentari: numele obiectivului, zona i preul biletului.
De asemenea, tot n modul Detail este disponibil i opiunea de Grid.

10

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

2.6 F ORMA P ARIS


Forma ofer posibilitatea vizionrii unei imagini de ansamblu a capitalei
datorit celor dou butoane Zoom In i Zoom Out cu ajutorul crora imaginea se
poate mri, respectiv micora.

11

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

12

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

13

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

3. Documentaia de proiectare
3.1 F RANA -O BIECTIVE

TURISTICE

Construcia proiectului n Visual FoxPro 2010 a nceput cu forma


principal care apare o singur dat i pe care se gsete meniul principal al
aplicaiei. Aceast form este funcional imediat dupa instalarea programului. Ea
a fost creat interactiv pornind de la new form i adugnd elemente dup cum
urmeaz:

Numele formei-a fost stabilit


n proprietatea Text.

Menu Strip a fost


adugat folosind controlul
specific din ToolBox.

14

Mai, 2012

ToolStripMenuItem-uri reprezint
ci de acces ctre alte formulare.

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


3.1.2 P ARTICULARITI

n cadrul controalelor de tip ToolMenuStrip am setat proprietatea Font pe

Tahoma, stilul Regular, Size 8.


Am modificat titlul formei la Frana-Obiective turistice folosind
proprietatea Text.
Item-ul Adaugare din cadrul meniului face trimitere la formularul Adugare.
Item-ul Modificare din cadrul meniului face trimitere la formularul
Modificare.
Item-ul Stergere din cadrul meniului face trimitere la formularul Stergere.
Item-ul Afiare din cadrul meniului face trimitere la formularul Afisare i are
dou opiuni :
Afisare in grid;
Lista Obiective;
Item-ul Paris din cadrul meniului face trimitere la formularul Paris.
Item-ul Ajutor permite deschiderea unui fiier Html ce conine informaii
ajuttoare privind aplicaia dat.

15

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

3.2 F ORMA A DAUGARE


Forma Adugare este construit sub forma unui formular de
completare a datelor ce pot caracteriza un obiectiv turistic.
Prin intermediul acestei forme, utilizatorul firmei poate introduce noi obiective n
baza de date.
Titlul formei-a fost
modificat folosind
proprietata Text a formei.

Etichetele
Realizate
cu ajutorul
controlului
specific
din
ToolBox.

Csuele de text
(TextBox)-sunt folosite la
introducerea datelor.Au
fost create folosind
controlul specific din
ToolBox.

Butoanele-au fost create


folosind controlul specific
din ToolBox.

16

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

3.2.1 P ARTICULARITI
Titlul formularului a fost schimbat n Adugare folosind proprietatea Text ;
Etichetele au fontul Microsoft Sans Serif, stilul Regular, iar butonul Adugare
are proprietatea BackColor setat pe ControlDarkDark, iar butonul Ieire pe
ControlText.
Pentru a se evita introducerea datelor n mod greit , am realizat validarea
datelor folosind proprietatea Validating.
La TextBox-urile corespunztoare cmpurilor Nume Obiectiv, Zona, aplicaia nu
permite introducerea cifrelor, ci doar a literelor.Exemplu de validare:
private void textBox2_Validating (object sender, EventArgs e)
{
string s = textBox2.Text.ToString();
int cod = 1, i;
for (i = 0; i < s.Length; i++)
if (s[i] < 65 || s[i] > 123)
cod = 0;
if (cod == 0)
{
MessageBox.Show("Caractere ilegale!", "Eroare!", MessageBoxButtons.OK,
MessageBoxIcon.Stop);
textBox2.Clear();
textBox2.Focus();
}
}

La TextBox-urile corespunztoare cmpurilor Ora Deschidere, Ora Inchidere,


Nota Primita, aplicaia nu permite introducerea literelor ,ci doar a cifrelor.Exemplu
de validare:
private void textBox3_Validating (object sender, EventArgs e)
{

string s = textBox3.Text.ToString();
int cod = 1, i;
for (i = 0; i < s.Length; i++)
if (s[i] < '0' || s[i] > '9')
cod = 0;
if (cod == 0)
{
MessageBox.Show("Caractere ilegale!", "Eroare!", MessageBoxButtons.OK,
MessageBoxIcon.Stop);
textBox3.Clear();
textBox3.Focus();

17

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


}

n cazul n care administratorul introduce date greite ntr-un TextBox, este


avertizat printr-un MessageBox :

Butonul Adugare introduce datele din TextBox-uri n tabela obiectiveturistice,


crend astfel o nou nregistrare :

private void button1_Click(object sender, EventArgs e)


{
OleDbConnection c = new OleDbConnection("provider=VFPOLEDB.1;Data
Source="+Path.GetFullPath("Obiectiveturistice.dbf").ToString());
c.Open();
string s = "insert into obiectiveturistice (Numeob, Zona, Oradeschid, Orainchid,
Notaprimit, Pretbilet) values ('" + textBox1.Text.ToString() + "', '" + textBox2.Text.ToString() + "',
" + textBox3.Text.ToString() + " ," + textBox4.Text.ToString() + " ," + textBox5.Text.ToString() +
"," + textBox6.Text.ToString() + ")";
// Instantiem o comand cu aceast cerere si precizm conexiunea
OleDbCommand cmd = new OleDbCommand(s, c);
// Apelm metoda ExecuteNonQuery pentru a executa comanda
cmd.ExecuteNonQuery();
c.Close();
this.Hide();
}

Butonul Ieire permite ieirea din formularul Adugare i revenirea la


formularul principal :
private void button2_Click(object sender, EventArgs e)
{
this.Hide();
}

18

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


3.3 F ORMA M ODIFICARE
Forma Modificare permite utilizatorului s modifice
datele unui anumit obiectiv turistic identificat dup numele
introdus ntr-un textbox.

Butoanele-au fost
create folosind
controlul specific
din ToolBox.

Etichetele(Lab
els)Realizate cu
ajutorul
controlului
specific din
ToolBox

TextBox-urile-sunt
folosite la
introducerea datelor.

Titlul formei-a
fost modificat
folosind
proprietata Text a
formei.

19

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

3.3.1. P ARTICULARITI
Titlul formularului a fost schimbat la Modificare folosind proprietatea Text ;
n ceea ce privete etichetele, acestea au fontul la Microsoft Sans Serif, stilul
Regular i butoanele au proprietatea BackColor setat la AppWorkspace.
Pentru a se evita introducerea datelor n mod greit , am realizat validarea
datelor folosind proprietatea Validating.
La TextBox-urile corespunztoare cmpurilor Nume Obiectiv, Zona, aplicaia nu
permite introducerea cifrelor, ci doar a literelor.
Exemplu de validare:
private void textBox2_Validating (object sender, EventArgs e)
{
string s = textBox2.Text.ToString();
int cod = 1, i;
for (i = 0; i < s.Length; i++)
if (s[i] < 65 || s[i] > 123)
cod = 0;
if (cod == 0)
{
MessageBox.Show("Caractere ilegale!", "Eroare!", MessageBoxButtons.OK,
MessageBoxIcon.Stop);
textBox2.Clear();
textBox2.Focus();
}
}

La TextBox-urile corespunztoare cmpurilor Ora Deschidere, Ora Inchidere,


Nota Primita, aplicaia nu permite introducerea literelor ,ci doar a cifrelor.Exemplu
de validare:
private void textBox3_Validating (object sender, EventArgs e)
{

string s = textBox3.Text.ToString();
int cod = 1, i;
for (i = 0; i < s.Length; i++)
if (s[i] < '0' || s[i] > '9')
cod = 0;
if (cod == 0)
{
MessageBox.Show("Caractere ilegale!", "Eroare!", MessageBoxButtons.OK,
MessageBoxIcon.Stop);
textBox3.Clear();
textBox3.Focus();
}

20

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


}

n cazul n care utilizatorul introduce date greite ntr-un TextBox, este avertizat
printr-un MessageBox :

Butonul Afiare afieaz datele obiectivului al crui nume coincide cu numele


introdus ntr-un TextBox :
private void button2_Click(object sender, EventArgs e)
{
OleDbConnection c = new OleDbConnection("Provider=VFPOLEDB.1; Data Source=" +
Path.GetFullPath("obiectiveturistice.dbf").ToString());
c.Open();
string s = " select * from obiectiveturistice where alltrim(upper(numeob))=alltrim(upper('"
+ textBox1.Text.ToString() + "' ))";
// Instantiem o comand cu aceast cerere si precizm conexiunea
OleDbCommand com = new OleDbCommand(s, c);
// Apelm metoda ExecuteReader() pentru a executa comanda data de selectString
OleDbDataReader dr = com.ExecuteReader();
//Afisam campurile inregistrarii in TextBox-uri
while (dr.Read())
{
textBox2.Text = dr[1].ToString();
textBox3.Text = dr[2].ToString();
textBox4.Text = dr[3].ToString();
textBox5.Text = dr[4].ToString();
textBox6.Text = dr[5].ToString();
}
c.Close();
}

Utilizatorul poate modifica datele obiectivului ales, iar prin apsarea butonului
Modificare noile date vor fi introduse n baza de date.
private void button1_Click(object sender, EventArgs e)
{

21

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


OleDbConnection c = new OleDbConnection("provider=VFPOLEDB.1;Data Source=" +
Path.GetFullPath("Obiectiveturistice.dbf").ToString());
c.Open();
// Sirul care pstreaz comanda de inserare a inregistrarii modificate in tabela (updatare) pentru
campurile de tip sir de caractere

string s1 = " update obiectiveturistice set numeob=' " + textBox1.Text.ToString() + " ',
zona='" + textBox2.Text.ToString() + "' where numeob='" + textBox1.Text.ToString() + " ' ";
// Sirul care pstreaz comanda de inserare a inregistrarii modificate in tabela (updatare)
pentru campurile de tip numeric
string s2 = " update obiectiveturistice set oradeschid=" + textBox3.Text.ToString() + ",
orainchid=" + textBox4.Text.ToString() + ", notaprimit=" + textBox5.Text.ToString() + ",
pretbilet=" + textBox6.Text.ToString() + " where numeob='" + textBox1.Text.ToString() + " ' ";
OleDbCommand cmd1 = new OleDbCommand(s1, c);
cmd1.ExecuteNonQuery();
c.Close();
c.Open();
OleDbCommand cmd2 = new OleDbCommand(s2, c);
cmd2.ExecuteNonQuery();
c.Close();
}

Butonul Renunare permite ieirea din formularul Modificare i revenirea la


formularul principal Frana-Obiective Turistice.
private void button3_Click(object sender, EventArgs e)
{
this.Hide();
}

22

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

3.4 F ORMA TERGERE


Forma tergere permite utilizatorului s tearg
datele unei maini din baza de date.
Titlul formei-a fost
modificat folosind
proprietata Text a
formei.

Label
s

Butoanele-au
fost create
folosind controlul
specific din
ToolBox.
TextBox-uri

3.4.1 P ARTICULARITI
Titlul formularului a fost schimbat n Stergere folosind proprietatea Text ;
Pentru a se evita introducerea datelor n mod greit , am realizat validarea
datelor la csua de text corespunztoare cmpului Nume Obiectiv folosind
proprietatea Validating :
private void textBox1_Validating (object sender, EventArgs e)
{

23

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


string s = textBox1.Text.ToString();
int cod = 1, i;
for (i = 0; i < s.Length; i++)
if (s[i] < 65 || s[i] > 123)
cod = 0;
if (cod == 0)
{
MessageBox.Show("Caractere ilegale!", "Eroare!", MessageBoxButtons.OK,
MessageBoxIcon.Stop);
textBox1.Clear();
textBox1.Focus();
}
}

Butonul Afiare permite afiarea datelor obiectivului turistic nainte de


tergerea acestuia, pentru o eventual verificare a utilizatorului:
{

private void button3_Click(object sender, EventArgs e)

OleDbConnection c = new OleDbConnection("Provider=VFPOLEDB.1; Data Source=" +


Path.GetFullPath("obiectiveturistice.dbf").ToString());
c.Open();
string s = " select * from obiectiveturistice where alltrim(upper(numeob))=alltrim(upper('"
+ textBox1.Text.ToString() + "')) ";
OleDbCommand com = new OleDbCommand(s, c);
OleDbDataReader dr = com.ExecuteReader();
while (dr.Read())
{
textBox2.Text = dr[1].ToString();
textBox3.Text = dr[2].ToString();
textBox4.Text = dr[3].ToString();
textBox5.Text = dr[4].ToString();
textBox6.Text = dr[5].ToString();
}
c.Close();
}

Butonul tergere realizeaz efectiv tergerea nregistrrii :

private void button1_Click(object sender, EventArgs e)

DialogResult r = MessageBox.Show("Sigur se doreste stergerea?", "Avertizare",


MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
if( r==DialogResult.Yes)
{ OleDbConnection c= new OleDbConnection("Provider=VFPOLEDB.1; Data
Source="+Path.GetFullPath("obiectiveturistice.dbf").ToString());
c.Open();
string stergere = "Delete from obiectiveturistice where alltrim(upper(numeob))= (('" +
textBox1.Text.ToString() + "')) ";

24

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


// Instantiem o comand cu cererea de stergere

OleDbCommand cmd= new OleDbCommand(stergere,c);


cmd.ExecuteNonQuery();
c.Close();
this.Hide();

Butonul Ieire permite ieirea efectiv din formular i revenirea la forma


iniial.
private void button2_Click(object sender, EventArgs e)
{
this.Hide();
}

3.5 F ORMA A FISARE


Aceast form permite utilizatorului s vizualizeze fiecare obiectiv din baza
de date prin intermediul a dou butoane: Precedent (<<) i Urmtor (>>).

TextBox-uri
Labels

Butoanele-au fost
create folosind
controlul specific din
Mai, 2012

25

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

3.5.1 P ARTICULARITI
Titlul formularului a fost schimbat n Afiare folosind proprietatea Text ;
Exist 2 butoane de tipul Precedentul i Urmtorul. Acestea fac posibil
vizualizarea obiectivelor turistice n funcie de ordinea n care au fost introduse n
tabela obiectiveturistice.
Atunci cnd se ajunge la nceputul sau la sfritul tabelei se dezactiveaz
butonul respectiv.
Pentru butonul Urmtorul:
private void button2_Click(object sender, EventArgs e)
{
{
if (nric + 1 <= nrinreg)
{
if (nric == 1)
button1.Enabled = true;
nric++;//creste numarul inregistrarii curente
OleDbConnection c = new OleDbConnection("provider=VFPOLEDB.1;Data Source="
+ Path.GetFullPath("Obiectiveturistice.dbf").ToString());
c.Open();
// Sirul care pstreaz comanda de selectie a inregistrarii cu numarul de ordine nric
string s = "select * from obiectiveturistice where recno()=" + nric + "";
// Instantiem o comand cu aceast cerere si precizm conexiunea
OleDbCommand cmd = new OleDbCommand(s, c);
OleDbDataReader dr = cmd.ExecuteReader();
//Afisam campurile inregistrarii selectate in TextBox-uri
while (dr.Read())
{
textBox1.Text = dr[0].ToString();
textBox2.Text = dr[1].ToString();
textBox3.Text = dr[2].ToString();
textBox4.Text = dr[3].ToString();
textBox5.Text = dr[4].ToString();
textBox6.Text = dr[5].ToString();
}
c.Close();

}
else
button2.Enabled = false;
}
}

Pentru butonul Precedentul:


26

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


private void button1_Click(object sender, EventArgs e)
{
if ((nric - 1) > 0)
{
if (nric == nrinreg)
button2.Enabled = true;
nric--;//scade numarul inregistrarii curente
OleDbConnection c = new OleDbConnection("provider=VFPOLEDB.1;Data Source=" +
Path.GetFullPath("Obiectiveturistice.dbf").ToString());
c.Open();
// Sirul care pstreaz comanda de selectie a inregistrarii cu numarul de inregistrare
nric
string s = "select *from obiectiveturistice where recno()=" + nric + "";
// Instantiem o comand cu aceast cerere si precizm conexiunea
OleDbCommand cmd = new OleDbCommand(s, c);
OleDbDataReader dr = cmd.ExecuteReader();
//Afisam capurile inregistrarii in TextBox-uri
while (dr.Read())
{
textBox1.Text = dr[0].ToString();
textBox2.Text = dr[1].ToString();
textBox3.Text = dr[2].ToString();
textBox4.Text = dr[3].ToString();
textBox5.Text = dr[4].ToString();
textBox6.Text = dr[5].ToString();
}
c.Close();
}
else
button1.Enabled = false;
}

3.6 F ORMA A FIARE

GRID

Forma Afiare grid permite utilizatorului s vizualizeze datele


obiectivelor turistice printr-un control de tip DataGridView.

27

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea

DataGridView-a fost
realizat folosind
controlul specific din
ToolBox.

3.6.1 P ARTICULARITI
Titlul formularului a fost schimbat n Afiare n grid folosind proprietatea Text;
n ceea ce privete controlul de tip DataGridView, am setat propietatea Visible
pe False pentru un aspect mai plcut al aplicaiei.
Forma Afisare n grid permite afisarea obiectivelor si vizualizarea datelor
complet.

private void Afisareingrid_Load(object sender, EventArgs e)


{
dataGridView1.ColumnCount = 6;
dataGridView1.Columns[0].HeaderText = " Nume obiectiv";
dataGridView1.Columns[1].HeaderText = "Zona";
dataGridView1.Columns[2].HeaderText = "Ora deschidere";
dataGridView1.Columns[3].HeaderText = "Ora inchidere";
dataGridView1.Columns[4].HeaderText = "Nota primita";
dataGridView1.Columns[5].HeaderText = " Pret bilet";
OleDbConnection c = new OleDbConnection("provider=VFPOLEDB.1;Data Source=" +
Path.GetFullPath("Obiectiveturistice.dbf").ToString());
c.Open();
string s = "select * from obiectiveturistice";
OleDbCommand cmd = new OleDbCommand(s, c);
OleDbDataReader dr = cmd.ExecuteReader();
string[] linie;
while (dr.Read())
{
linie = new string[6] { dr[0].ToString(), dr[1].ToString(), dr[2].ToString(), dr[3].ToString(),
dr[4].ToString(), dr[5].ToString() };
dataGridView1.Rows.Add(linie);
}
c.Close();}

28

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


3.7 F ORMA L ISTA O BIECTIVE
Forma afieaz o list cu nume de obiective, oferind
informaii legate de zona n care acestea se gsesc i de preul
biletului la intrare. Sunt posibile diverse moduri de afiare:
LargeIcon, SmallIcon, List, Tile, Detail.

Controale de tip
RadioButton
din ToolBox.

ListView

CheckBox

GroupBox

Buton- creat folosind


controlul specific din
ToolBox.

Controale de tip
ImageList (din
ToolBox) ce
apar n tray-ul
Form Designerului

Mai, 2012

29

Reprezint referinele spre colecia


de icon-uri mici necesare n modul
SmallIcon, List i Detail, respectiv
spre colecia de icon-uri mari
necesare n modurile LargeIcon i
Tile.

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


3.7.1 P ARTICULARITI
Titlul formularului a fost schimbat n List Obiective folosind proprietatea Text;
Se seteaz pentru imageList1, dimensiunile (16,16) i adncimea de culoare 8
bii. Pentru imageList2 se seteaz dimensiunile(48, 48) i adncimea de culoare 32
de bii.
Controlul ListView se populeaz la ncrcarea formei. Evenimentul Load se
trateaz astfel:
private void ListaObiective_Load(object sender, EventArgs e)
{
// Controlul listview1 preia colectiile de iconuri
//mici si de iconurimari;
listView1.SmallImageList = imageList1;
listView1.LargeImageList = imageList2;
listView1.BeginUpdate();
listView1.Columns.Add("Obiective Turisitice", 150, HorizontalAlignment.Left);
listView1.Columns.Add(" Zona", 100, HorizontalAlignment.Left);
listView1.Columns.Add("Pret Bilet", 110, HorizontalAlignment.Left);
//adaug primul item inlista. Este un obiect de tip ListViewItem;
ListViewItem it1=new ListViewItem();
// indexul icon-ului din listImage1 si listImage2
it1.ImageIndex = 0;
//Textul Itemului
it1.Text = "Arc_de_Triomphe";
//Cream doi subitemi.
it1.SubItems.Add("Paris");
it1.SubItems.Add("(-)");
//adaugam itemul in controlul ListView
listView1.Items.Add(it1);
//Se creeaza al doilea item in acelasi mod
ListViewItem it2 = new ListViewItem();
it2.ImageIndex = 1;
it2.Text = "Chateau-de-Chambord";
it2.SubItems.Add("Chambord, Loir-et-Cher");
it2.SubItems.Add("3 euro");
listView1.Items.Add(it2);
ListViewItem it3 = new ListViewItem();
it3.ImageIndex = 2;
it3.Text = "Disneyland";
it3.SubItems.Add("Marne-la-Valle");
it3.SubItems.Add("10 euro");
listView1.Items.Add(it3);
ListViewItem it4 = new ListViewItem();
it4.ImageIndex = 3;
it4.Text = "Eiffel Tower";
it4.SubItems.Add("Paris");
it4.SubItems.Add("5 euro");
listView1.Items.Add(it4);
ListViewItem it5 = new ListViewItem();
it5.ImageIndex = 4;
it5.Text = "La Palmyre Zoo";
it5.SubItems.Add("Les Mathes");
it5.SubItems.Add("8 euro");
listView1.Items.Add(it5);
ListViewItem it6 = new ListViewItem();

30

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


it6.ImageIndex = 5;
it6.Text = "Mont Saint Michel";
it6.SubItems.Add("Golful Saint-Malo");
it6.SubItems.Add("7 euro");
listView1.Items.Add(it6);
ListViewItem it7 = new ListViewItem();
it7.ImageIndex = 6;
it7.Text = "Musee-Carnavalet";
it7.SubItems.Add("Paris");
it7.SubItems.Add("2 euro");
listView1.Items.Add(it7);
ListViewItem it8 = new ListViewItem();
it8.ImageIndex = 7;
it8.Text = "Muzeul Luvru";
it8.SubItems.Add("Centrul Parisului");
it8.SubItems.Add("4 euro");
listView1.Items.Add(it8);
ListViewItem it9 = new ListViewItem();
it9.ImageIndex = 8;
it9.Text = "Natural History Museum";
it9.SubItems.Add(" Paris");
it9.SubItems.Add("7 euro");
listView1.Items.Add(it9);
ListViewItem it10 = new ListViewItem();
it10.ImageIndex = 9;
it10.Text = "Notre_Dame";
it10.SubItems.Add("le de la Cit");
it10.SubItems.Add("5 euro");
listView1.Items.Add(it10);
ListViewItem it11 = new ListViewItem();
it11.ImageIndex = 10;
it11.Text = "Orsay Museum";
it11.SubItems.Add("Paris");
it11.SubItems.Add("4 euro");
listView1.Items.Add(it11);
listView1.EndUpdate();
}

Butonul cu eticheta Large Icons. Evenimentul CheckedChanged se trateaz


astfel:
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
//Proprietatea View primeste valoarea LargeIcon
listView1.View = View.LargeIcon;
//Se dezactiveaza casuta de validare pentru Grid, care este posibil doar in modul DEtail
checkBox1.Enabled = false;
}

Butonul cu eticheta Tile cuprinde in corpul handler-ului de eveniment,


urmtorul cod:
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
listView1.View = View.Tile;
checkBox1.Enabled = false;

31

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


Butonul cu eticheta SmallIcons cuprinde in corpul handler-ului de eveniment,
urmtorul cod:
private void radioButton3_CheckedChanged(object sender, EventArgs e)
{
listView1.View = View.SmallIcon;
checkBox1.Enabled = false;
}

Butonul cu eticheta List cuprinde in corpul handler-ului de eveniment,


urmtorul cod:
private void radioButton4_CheckedChanged(object sender, EventArgs e)
{
listView1.View = View.Tile;
checkBox1.Enabled = false;
}

CheckBox-ul cu eticheta Grid cuprinde urmtorul cod:

private void checkBox1_CheckedChanged(object sender, EventArgs e)


{
//Daca s-a selectat checkbox-ul
if (checkBox1.Checked)
{// punem griduri
listView1.GridLines = true;
}
else
{
//Daca s-a deselectat controlul
//se scot griduri
listView1.GridLines = false;
}
}

Butonul Ieire permite ieirea din formularul Lista Obiective i revenirea la


formularul principal Frana-Obiective Turistice.
private void button1_Click(object sender, EventArgs e)
{
this.Hide();
}

3.8 F ORMA P ARIS


Forma ofer o imagine de ansamblu a celui mai important ora francez,
Paris. Este util datorit celor dou butoane, de mrire, respectivemicorare a
imaginii prin intermediul celor dou butoane: Zoom In, respectiv Zoom Out.

32

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


Butoanele-au fost
create folosind
controlul specific din
ToolBox.

3.8.1 P ARTICULARITI
Titlul formularului a fost schimbat n Paris folosind proprietatea Text ;
Programul face apel la dou subprograme ,prin intermediul crora se creeaz o
hart de bii imaginii care convertete imaginea real cu ajutorul modulului
Graphics.

public Image PictureBoxZoomIn(Image img, Size size)


{
Bitmap bm = new Bitmap(pictureBox1.Image, Convert.ToInt32(pictureBox1.Image.Width *
size.Width), Convert.ToInt32(pictureBox1.Image.Height * size.Height));
Graphics grap = Graphics.FromImage(bm);
return bm;
}
public Image PictureBoxZoomOut(Image img, Size size)
{
Bitmap bm = new Bitmap(pictureBox1.Image, Convert.ToInt32(pictureBox1.Image.Width /
size.Width), Convert.ToInt32(pictureBox1.Image.Height / size.Height));
Graphics grap = Graphics.FromImage(bm);
return bm;

Pentru butonul Zoom In avem urmtorul cod (se mrete imaginea cu 2valoare dat-)
private void button1_Click(object sender, EventArgs e)
{

zoom = 2;
pictureBox1.Image = PictureBoxZoomIn(pictureBox1.Image, new Size(zoom, zoom));
}

33

Mai, 2012

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


Pentru butonul Zoom Out avem urmtorul cod (se micoreaz imaginea cu
2-valoare dat-)
private void button2_Click(object sender, EventArgs e)
{
zoom = 2;
pictureBox1.Image = PictureBoxZoomOut(pictureBox1.Image, new Size(zoom, zoom));
}

3.9 F IIERUL A JUTOR


Pentru eventuale informaii ajuttoare privind aplicaia, utilizatorul poate accesa
fiierul Ajutor din meniul corespunztor formei Frana-Obiective Turistice.
private void ajutorToolStripMenuItem_Click(object sender, EventArgs e)
{

// Ajutor j = new Ajutor();


//afisarea fisierului care contine help-ul aplicatie (proiect .chm )
Help.ShowHelp(this,Path.GetFullPath("help.chm").ToString());
}

4. S CHEMA A PLICATIEI

PASLMF
fatdioF
ireasdO
sirut
sagfc
reaOi
erbc
iea
ner
gce
rt

b
u

i
r

e
i

c
s

i
dv
e
34

Mai, 2012

i
c

e
n

Colegiul Naional Alexandru Lahovari, Rmnicu Vlcea


5. Tabele
Obiectiveturisice.dbf

35

Mai, 2012