Hacking and more...
HaCkinG CulT
Lista Forumurilor Pe Tematici
Hacking and more... | Reguli | Inregistrare | Login

POZE HACKING AND MORE...

Nu sunteti logat.
Nou pe simpatie:
mememe12 la Simpatie.ro
Femeie
23 ani
Bucuresti
cauta Barbat
23 - 80 ani
Hacking and more... / n00bs / Bazele in Visual Basic Moderat de Shocker
Autor
Mesaj Pagini: 1
$-Geo-$
Master of 127.0.0.1

Inregistrat: acum 18 ani
Postari: 133
Bazele in  Visual Basic
Continut:
Introducere
Variabile,constante
Tipuri de variabile
Tipul array
Instructiuni
Proceduri
Functiile msgbox() si inputbox()
Fisiere
Meniu
Bibliografie


Introducere
Visual Basic este un mediu de programare vizuala  de inalta productivitate,produs de firma Microsoft,cu care poti crea o multime de aplicatii Windows.Visual Basic este derivat de la limbajul Basic si face parte din  pachetul pentru programare vizuala oferit de Microsoft,Visual Studio.
Programul Visual Basic este alcatuit din :
Bara de meniu—contine meniuri cu care sunteti familiarizati din alte     
                            programe(File,Edit,View,Windows,Help)+2 meniuri specifice
                            compilatoarelor (Project,Debug,Run,Add-ins);
Bara de instrumente—are cateva scurtaturi pt comenzile cele mai folosite (Save,Open..)
Bara de controale(Toolbox)—contine controalele din Visual Basic
Fereastra Properties—proprietatile controalelor(am sa va explic cateva pe la sfarsitul
                                    tutorialului)
Browser-ul pentru proiect—afiseaza formularele si modulele proiectului
Fereastra From Deisgn— contine forma fiecarui element
Fereastra de cod—nu este vizibila ,dar fiecarei forme sau module ii este asociata
                                Aici se scrie codurile din visual basic(declararea variabilelor,
                                instructini,etc);
Comentarile in Visual Basic se fac cu ajutorul ‘ (apostrof).

Variabile,constante
   1.Variabile
Variabilele sunt  numele unei locati de memorie in care se pastreaza o valoare care poate fi modificata in timpul executiei programului.
Declararea variabilelor :
Dim nume_variabila as tip
nume-este numele variabilei declarate(si pe care vei folosio in program);
tip-tipul de date care ii este asociat(vom discuta despre acestea mai tarziu);
Variablele incep cu o litera sau cu _(underscore) si contine 255 de caracere
Mai putem folosi un fel de declarare a variabilelor:
      -a)Public nume as tip
                                          sau
      -b)Static nume as tip
a)daca folosim cuvantul cheie Public inseamna ca am vrut ca variabila sa fie cunoscuta in intreaga aplicatie
b)daca am folosit Static atunci  inseamna ca am vrut sasi pastreze  valoarea chiar si  in afara proceduri.

   2.Constante
Constantele sunt un fel de variabile dar fata de acestea ele nu pot fi modificate in timpul executiei  programului.
Declararea constantelor :
[Private][Public]Const  nume as tip = valoare
nume & tip-ca la variabile
valoare- poate fi un numar,caracter sau sir de caractere care in timpul unui program sa nu                       
             se schimbe
Private –cuvant cheie care face constata sa fie folosita numai in aplicatia curenta
Public - cuvant cheie care face constanta vizibila in tot programu


2 functii incluse in compilator(limbaj) sunt vla() si str().
Val()—transforma un sir de caractere inrun rezultat intreg(Asciinumar)
Str() –transforma un intreg intrun sir de caractere(numarAscii)



Tipuri de variabile
In Visual Basic tipurile de variabile se impart(zic eu si multi alti de la care am invatzat) in 2 categorii :
1)Numerice :
Byte:de la 0 la 255
Integer : numere intregi intre  -32,768 si 32,767
Long : intreg lung (ceva numere mai mari)
Single:numere reale cu virgula mobila simpla precizie
Double:numere reale cu virgula mobila cu dubla precizie
Currency:numere foarte mari(folosite pt monede spun unele carti)
Decimal:numere foarte foarte mari
Cu toate aceste tipuri se pot efectua operatii aritmetice.
2)Nenumerice:
String:ca in toate limbajele(pt siruri de caractere);
Date:se foloseste pt date din calendar
Boolean :retine valori de tip true/flase(adevart/fals) ;
Object :pt obiecte
O variabila dere care nu sa mai auzit despre ea in alte limbaje este tipul Variant.
Variant—contine toate tipurile de date
Pt a forta o valoare sa ia un anumit tip de data atunci folositi urmatoarele sufixe :
& --------------------------------------Long
! ---------------------------------------Single
#---------------------------------------Double
@--------------------------------------Currency



Tipul array
Tipul array este o lista de variabile ,toate avand acelasi tip de date si acelasi nume.
Declararea variabilelor se poate face cu ajutorul cuvintelor cheie Public sau Dim(leam explicat mai sus):
Dim nume(numar_de_elemente) as tip_de_date
Variabilele sunt  numar_de_elemente-1
De exemplu :Dim student(3) as String       avem variabilele :student,student(1),student(2)
Putem declara tipul array ca:
Dim trandafiri(10 to 50) as Integer
Am declarat un array care incepe cu trandafiri(10) si se termina cu trandafiri(50)

Exemplu :

Private Sub cmdtest_Click()

Dim prop(4) as string

prop(0)= « Programare »
prop(1)=”in”
prop(2)=”Visual”
prop(3)=”Basic”

Msgbox prop(0) & “ “ & prop(1) & “” prop(2) & “ “ & prop(3)

End Sub




Instructiuni
In Visual Basic sunt 3 feluri de instructiuni :1)de decizie
2)repetitive
3)de salt
1)Instructiuni de decizie
Sunt in numar de 2:a)Instructiunea IF
                               b)Instructiunea Case
a)Instructiunea if:
Testeaza daca o conditie daca este adevarata.
Folosire:are mai multe feluri de folosire
If cond then instructiune
Daca cond(conditia) este adevarata executa instructiunea.
Exemplu:
If 9>7 then msgbox “9 e mai mare decat 7”

If cond  then  instructiune 1
             Else instructiune 2
             End If
Testeaza daca cond(conditia) este adevarat si executa instructiunea 1.Daca cond este falsa atunci executa instructiunea2 si se termina in sf programu cu autorul lui End If.
Exemplu:
If 7<5 then msgbox « 7 este mai mic decat 5”
           Else msgbox “7 este mai mare decat 5”
End if

If cond then  instructiune 1
            Else If  cond 2then instructiune 2
            Else If  cond 3 then instructiune 3
            :
            :
            Else If  cond n  then instructiune n
End if

Testeaza daca cond(conditia) este adevarata si executa instructiunea 1,daca nu testeaza ce este la Else if la conditia 2 si daca este adevarat executa instructiunea 2 daca nu testeaza cond 3 si tot asa.

Exemplu :
In sf va dau un exemplu de un program complet.Faceti o forma cu 3 controale text si un label cu numele rezultat.Cele 3 controale text faci :primul la proprietatea Name scri primul,la al 2lea control la Name scri operato iar la al 3lea la Name scri aldoilea.

Private Sub cmdtest_Click()
Dim primul as integer
Dim operator as string                       
Dim aldoilea as integer

primul = primulnumar.text
operator=  operator.txt
aldoilea=aldoileanumar.txt

If operator=”+” then
         rezultat.Caption=primul+aldoilea
    Else if operator=”-“ then
         rezultat.Caption=primul+aldoilea
    Else if operator=”*” then
         rezultat.Caption=primul*aldoilea
     Else if operator=”/” then
          rezultat.Caption=primul/aldoilea
End If
End Sub

Acest program functioneaza ca un calculator simplu.

b)Instructiunea Case
Este o instructiune cu decizie multipla.Este echivalenta cu ultimua folosinta de la if adik cum e exemplu de mai sus.

Select Case cond
          Case 1 :instructiune
          Case 2 :instructiune 2
          :
          :
          Case n:instructiune n
          Case Else:instructiune n+1
End Select
Testeaza conditia cond daca se afla intre case 1 si case n daca nu ,se se executa ce se afla la case else.
Exemplu :
Vom lua exemplu de la if(ultimul,care lam numit eu calculator)

Private Sub cmdtest_Click()
Dim primul as Integer
Dim operator as String
Dim aldoilea as Integer

primul=primulnumar.txt
operator=operator.txt
aldoilea=aldoileanumar.txt

Select Case (operator.txt)
          Case +:
                     rezultat.caption=primul+aldoilea
          Case - :
                      rezultat.Caption=primul-aldoilea
          Case *:
                      rezultat.caption=primul*aldoilea
           Case /:
                      rezultat.caption=primul/aldoilea
            Case Else:
                      rezultat.caption=”Ai tastat ceva gresit”
End Select
End sub

2)Instructiuni repetitive
Sunt tot in numar de 3:-while
                                    -do
                                    -for
a)While
Verifica conditia si daca este adevarat o executa pana cand se face falsa.Traducere din engleza in romana while inseamna cat timp.Instructinea while este cu test initial.


While(conditie)
           Instructiune
Wend

Exemplu:
Creazati un control text (cu numele  textdatdevoi.txt)si un buton(cu numele cmdtest).Acest program cere de la utilizator un numar si acesta daca este mai mare executa pana cand numar (variabile declarata de noi) o ajunge(adik se egalizeaza).

Private Sub cmdtest_Click()

Dim numar as Integer

numar = 1

While(numar<=textdatdevoi.txt)
Msgbox numar & “MsgBoxes”
numar=numar+1
Wend

End Sub

b)Do
Instructiunea do :
-Instructiunea cu test initial (e aproape ca while)
i) Do While conditie
                instructiune
Loop

ii)Do Until Conditie
                Instructiune
Loop
Aceste 2 instructiuni sunt cu test initial si  executa instructiune(poate fi un grup de isntructiuni) cat tip conditia este adevarat(i)=pana cand conditia se face falsa(ii).

-Instructiune cu test final:
i)Do
      Instructiune
Loop while  conditie

ii)Do
      Instructiune
Loop until  conditie

Aceste 2 instructiuni sunt cu test final adik prima data executa instructiune si dupaia  verifica conditia(diferentza intre test initial si test final este ca la cele cu test final  de cel putin o singura data se executa pe cand cea cu test initial sar putea sa nu se execute deloc)

Exemplu(cu test final deoarece alea cu test initial e aproape ca while):
Vom lua sursa codului de la while si o vom transpune aici cu do in loc de while.

Private Sub cmdtest_Click()

Dim numar as Integer

numar = 1

Do
Msgbox numar & “MsgBoxes”
numar=numar+1
Loop While(numar<=textdatdevoi.txt)

End Sub

Daca veti vedea acest cod va intrebati ce este asa diferit.Poi prima diferentza este ca sa folosit in loc de While..Wend Do..Loop While si a doua diferentza e ca daca il veti utiliza pe primu si veti scrie 1 nu se va intampla nimik,dar daca executati a doua sursa daca vei scrie 1 ti se va aparea un MsgBox si va repeta o data (adik o data trebe sa dai ok ).

c)For
Sincer sa fiu asta e cea mai usoara(nu stiu care o folosesc alti programatori dar eu asta o folosesc cel mai mult).
Poi ce sa zic.For tradus din engleza in romana inseamna pentru.

For numevariabila_de_lacat  to numevariabila_pana_la_cat
                         Instructiune
Next numevariabila

Poi nu stiu cum sa va explic dar mai bine zic eu sa va dau un exemplus I sa va zic acolo.
Exemplu :
Vom lua exemplu de la while si do.








Private Sub cmdtest_Click()

Dim numar as Integer


For numar=1 to textdatdevoi.txt
Msgbox numar & “MsgBoxes”
Next numar

End Sub

Poi cum vedeti for mai scurteaza din cod sursa si este mai usor.In loc sa ii dam valoare  lu numar inafara instructiuni for o da inauntru.Acest cod se va executa pana cand numar va fi egal cu textdatdevoi.txt.Si inca o chestie in loc sa incrementam noi variabila(adik numar=numar+1) instructiunea for o face in interiorul ei cu ajutorul lui Next(urmatorul).

O versiune de for mai este:
For each v in multime
               Instructiune
Next v
Exemplu:
Suma mai multor numere(acest exemplu lam luat dintro carte care o voi prezenta la bibliografie)
Dim s,i as integer
Dim nr
Sub Suma(ParamArray())
For Each I in Nr
s=s+1
Next i
Txt_nr.txt = txt_nr.txt + str(s)+’ ‘
End Sub
Private Sub cmd_exit_Click()
Suma 1,7,11,14
Suma 2,12
End Sub

Acest exemplu lam dat aici dar ar putea sa fi dat si intrun urmator capitol(proceduri,mai exact la procedura sub)



3)Instructiune de salt:GoTo
Unii zic ca este comanda unii zic ca este isntructiune(eu ii dau numele de instructiune).
Poi Goto tradus din engleza in romana inseamna mergi la.Cum zice si traducerea si numele de instructiune ,GoTo poate sari peste ceva daca vreti sau poate sari intro parte a unui program(partea aleasa de voi).

Private Sub cmdtest_Click()

MsgBox « Salut ! »

buna :
MsgBox « Buna ! »

ce :
Msgbox « Ce faci ? »

Goto buna
pa :
Msgbox « La revedere ! »

End Sub




Acest program daca il veti executati  nu se va termina nici o data deoarece goto inainte de asi lua la revedere se executa din nou si tot asa.Dupa ce da un msgbox cu ce faci ? iar va va redirectiona la buna si tot asa.


Proceduri
In Visual Basic se poate  declara o procedura folosind meniul programului adik Tools  si dupaia submeniul Add Procedure.Iti va aparea o fereastra in care la Name scri numele proceduri si la Type vei alege ce fel de procedura vrei sa fie proceura ta(voi explica un pic mai tz despre aceasta) ,iar laScope alege vizibilitatea.
Akm va voi arata cum sa declara tu o procedura fara ajutorul meniului(programului).
In Visual Basic sunt 2 feluri de proceduri :
-pt a nu rezulta nici o valoare se foloseste procedura Sub;
-pt a rezulta o valoare se foloseste procedura Function ;
Sub
Si aceasta la randul ei se imparte in 2 :generale
                                                             eveniment
Procedura Sub generala  trebe sa fie declarata explicit de program.
Procedura Sub eveniment se refera la o procedura in care este eplata un eveniment.In toate exemplele de mai sus daca va uitati akm va zic ca sunt toate proceduri sub eveniment .O procedura eveniment este de exemplu Private Sub cmdtest_click().Evenimentul din aceasta procedura este click().Numele unei eveniment  se combina cu numele controlului cu ajutorul lui « _ »(underscore).
Declararea procedurii Sub in general este :
[Private/Public][Static]Sub nume[argument]
Continutul programului
End Sub
Private,Public,static este ca la variabile,se refera la vizibilitatea in program.Argument este declararea unei  variabile in acel program.De exemplu :
Private Sub eu
Dim name as inetger
putem scrie
Private Sub eu(nume as string)
La asta se refera argument .
Daca  vreti sa folositi tipul array trebe sa folositi ParamArray.
Apelarea unei proceduri se face cu ajutorul lui Call.Daca ati mai lucrat in alte limbaje de programare (cum ar fi pascal) call este ca clauza with de la tipul record sin pascal.


Function
Aceasta procedura returneaza o valoare.
Declararea acestei fucntii este aproape ca a celei Sub:
[Private/Public][Static]Function nume(argument) as tip de variabila
Corpul programului
End Function


Ce ziceti?Nui asa ca e exact ca seamana cu Sub,dar diferentza e ca in loc de sub declaram Function si ii acordam un tip de variabila(rezultatul care il va rezulta ii va lua acest tip).



Functiile msgbox() si inputbox()
Msgbox()
Functia msgbox()  afiseaza un mesaj intro fereastra noua.Aceasta functie este foarte mult folosita in Visual Basic.
Sinatxa este:
MsgBox(mesaj,[tipu;],[titlul])
mesaj :ceea ce vrei tu sa apara in acea fereastra(caractere si numere deobicei)
tipul :se refera cum sa afiseze msgboxul.Sub forma de eroare(VbCritical),sub forma de intrebare(VbQuestion),sub forma de avertisment(VbExclamation),sub forma de informare (VbInformation).
titlul :se refera la ce nume vrei sa aiba msgboxul.
Daca ii atribuim unei variabile un msgbox ca in exemplu :
m = msgbox(« Acesta este un test »,VbExclamation, »Test »)
Variabila m i se va atribui o valoare intreaga in funtie de ce buton vrei sa apara
1-pt ok
2-pt cancel
3-pt abort
4-pt retry
5-pt ignore
6-pt yes
7-pt no
Daca combinam aceste valori cu niste forme de afisare putem crea alte forme ca de exemplu :
VbOKOnly :va afisa o informatie in care se foloseste buton ok
VbOKCancel : ok si cancel
VbAbortRetryIgnore : abort,retry si ignore(butoane)
VbYesNoCancel :yes,no si cancel
VbYesNo :yes si no
VbRetryCancel :retry si cancel
Cred ca vati prins de smecherie !!!

Inputbox()
Aceasta functie executa 2 aplicati :afiseaza ceva sub forma de intrebare
                                                       asteapta un raspuns.(in special pt asta este folosita)
Sintaxa(e ceva mai complecta decat msgbox())

InputBox(mesaj,[titlu],[default],[xpos],[ypos],[helpfile])
mesaj-ce intrebare vrei sai pui
titlu-titlul ferestrei(ca la msgbox())
defaul-sir de caractere ce reprezinta un raspuns prestabilit
xpos,ypox-reprezinta coordonate unde vrei s apara caseta text in aceast afereastra ;





Fisiere
Poi ce sa zic de fisiere ca aproape toti stiu ce is alea(de aceea nu mai dau si definitia).Fisierele sunt folosite peste tot si in toate limbajele de programare(cunoscute).
Poi pt lucrul cu fisiere cateva lucruri elementare va voi explica eu aici.
Pt a deschide un fisier(poi ca sa lucrezi cu un fisier obligatoriu trebe sa fie deschis) se foloseste urmatoarea sintaxa :
Open calea for [Input(asta se foloseste pt citire din fisiere)][Output(pt scriere in fisiere)][Append(pt a adauga ceva)] As nrfisiere(acest nume este folosit in programul nostru)
Pt a scrie valoarea unei variabile  intrun program folosim
Print #nrfisiere,lista_de_variabile
Tot pt scriere este folosit si urmatoarea instructiune dar aceasta scrie si stringuri si mai multe variabile.
Write #nrfisier,lista_expresii
Pt fisierele binare si aleatorii se foloseste isntructiunea Put #nrfisiere,lista_variabile. Fisierele binare si aleatori se deschid cu Random si Binary .
Citirea dintrun fisier se face cu se foloseste :
Input #nrfisiere,lista_variabile (pt liste de variabile sau stringuri)
Line Input #nrfisiere,variabila (pt citirea unei liniii intregi dintr-un fisier)
Get #nrfisiere,lista_variabil (pt fisierele binare si aleatorii)
Si inchiderea unui fisier se face cu ajutorul instructiunii :
Close #nrfisiere

Daca vreti sa alegi o locatie de unde sa se deschida un fisiere  (nu stiu cum sa va explic,mai bine dau un exemplu) faceti aproape ca mine :

Dim locatia as String
comdlg32.Show     (si aicea poate fi Save pt a salva,Open pt a deschide)
locatia=comdlg32.FileName
Open locatia for (optiunile de mai sus)[] as #nrfisiere

Exemplu de program care lucreaza cu fisiere :
Creati un control text care ii dati numele de txt_scriere si un buton pt a scrie cu numele de cmd_scris.

Private Sub cmd_scris_Click()

Open « c:exemplu.txt » For Output As #1
Print #, txt_scriere.Txt
Close #1

End Sub


Meniu
Daca ati urmat acest mic tutorial creat de mine poti crea un program cat de cat pt folos.Pt programele mari ,ati vazut ca se foloseste meniuri.De exemplu toate programele am vazut ca au meniul File .Te gandesti cum sa faci si tu asa ceva ,nu?(cred ).Poi foarte usor .Visual basic are inclus in program(in meniul lui) un editor de meniu.Pt al accesa tot ce trebuie sa faci e sa te « duci » in Tools dupaia dai la Meniu Editor.(Ctrl+E)
Este foarte usor sa lucrezi in acest « editor »Poi sa va explic :
La Caption –contine numele pe care tu il vezi(de exemplu File)
La Name pui numele optiuni (de obicei cu prefixu _mnu)
La Index  pui o valoarea indexului intr-o matrice
La Shortcat pui o combinatie de taste ca sa fie mai usor utilizatorului sa ffolosesti
                   programu
NegotiatePosition-pozitia fatza de alt meniu(coodonate)
Checked-la fel ca o caseta de validare
Butoanele :
Next-urmatorul meniu
Insert-insertarea unui submeniu intrun meniu
Delete-stergea unui meniu
Daca punem & in fata la o litera de la Caption va realiza(eu dau exemplu dar nui obligatoriu aceasta litera) a de exemplu Animal.


Bibliografie
In primul rand :Visual Basic in 30 de lectii de Marina-Cristiana Bold (poi am chiar in tutorialul meu multe propozitii luate de aici deoarece nu am avut cuvinte sa explic)
In al doilea rand :siteurile(sincer nu stiu ca am cautat pe google si mia dat rezultate si am tradus de pe acolo)
Si in al3lea rand :din prorpiiile mele cunostinele (akm 2 saptamani mam apucat din plictiseala de Visual Basic si am zis pe baza ce invatz sa fac si un fel de test si sa scriu ce am invatzat->rezulta ceea ce e scris aici)
Creat de $-Geo-$(vas da si numele dar dupaia………..)


pus acum 17 ani
   
andrewboy
Grand Master

Inregistrat: acum 17 ani
Postari: 330
vezy k ai creat 2 topicuri   si ii fain tutorialul

_______________________________________
---ziceti-mi parerea voastra despre chat

pus acum 17 ani
   
$-Geo-$
Master of 127.0.0.1

Inregistrat: acum 18 ani
Postari: 133
scuzati-ma dar la primul topic mia dar error:the request................ si am crezut ca nu ssa creat.Rog cei cu functii mai mari sa stearga unu dintre ele pls(va rog mult chiar)

pus acum 17 ani
   
andrewboy
Grand Master

Inregistrat: acum 17 ani
Postari: 330
miam dat seama,mi se mai intampla si mie cate o data



Nu ai cumva si un tutorial de programare in windows c++?

Modificat de andrewboy (acum 17 ani)


_______________________________________
---ziceti-mi parerea voastra despre chat

pus acum 17 ani
   
$-Geo-$
Master of 127.0.0.1

Inregistrat: acum 18 ani
Postari: 133
poi in c++ nu lucrez asa de mult si nu am cautat pe net ca sa ma documentez(stiu ca era ceva chiar si pe forum despre programare in visual c++ si spunea cum sa faci unele aplicatii windows)

Modificat de $-Geo-$ (acum 17 ani)


pus acum 17 ani
   
andrewboy
Grand Master

Inregistrat: acum 17 ani
Postari: 330
pai nu am gasit

_______________________________________
---ziceti-mi parerea voastra despre chat

pus acum 17 ani
   
Dynamyc
Elite Member

Din: de peste tot
Inregistrat: acum 18 ani
Postari: 836
frumos tutorial!
mai pune daca mai ai


_______________________________________




pus acum 17 ani
   
$-Geo-$
Master of 127.0.0.1

Inregistrat: acum 18 ani
Postari: 133
am sa  mai fac(atata stiu pe moment,cand am sa invatz mai mult in vb am sa mai fac)
Andrewboy:nu stiu daca ma ai in lista dar eu te am cu id ala care incepe cu andrew si cad intri am sati dau ceva ce am prin calc


pus acum 17 ani
   
FrEeBoY
Elite Member

Din: ALKATRAZ
Inregistrat: acum 17 ani
Postari: 596
f frumos tutorialul , multa munca la el , merita 2 topicuri  

Modificat de FrEeBoY (acum 17 ani)


_______________________________________

cui nu ii place site u sa mi dea un pm si sa zica ce nu ii place si voi incerca sa modific =>

pus acum 17 ani
   
andrewboy
Grand Master

Inregistrat: acum 17 ani
Postari: 330
da freeboy merita dar regula nui da voie

_______________________________________
---ziceti-mi parerea voastra despre chat

pus acum 17 ani
   
Pagini: 1  

Mergi la