Andrey Kolesov, Olga Pavlova
Sfat 182. Implementarea funcției "așteptați" în VB
Aici vom arăta cum puteți implementa funcția de așteptare în VB. Mai întâi, puneți timerul (Timer1) pe formular și setați proprietatea Interval = 0 și proprietatea Enabled = False.
Pentru a testa procedura, adăugați două etichete (Label1 și Label2) și un buton de comandă (Command1) la formular. Scrieți următoarea subrutină și codul evenimentului Timer pentru cronometru:
Acum puteți utiliza funcția de așteptare ori de câte ori aveți nevoie de întârziere, de exemplu:
Sfat 183. Suport pentru numerotarea versiunilor dvs. de program VB
Versiunile de numerotare ale programelor create pe VB pot fi simple dacă utilizați funcția de numerotare a versiunilor atunci când creați un modul EXE. Pentru a face acest lucru, faceți clic pe butonul Opțiuni din caseta de dialog Faceți clic pe Proiect și apoi selectați caseta de selectare Auto Increment din fila Efectuați din caseta de dialog Proprietăți proiect.
Numărul versiunii programului constă în trei elemente: majore, minore și revizuire. Funcția Auto Increment (Creștere automată), dacă este selectată, va crește automat numărul Reviziei cu câte o dată când executați comanda Make Project (Proiectare) pentru un anumit proiect.
De obicei, informații despre versiunile programului sunt folosite sub forma Despre. Pentru a face acest lucru, pur și simplu adăugați o etichetă numită lblVersion și introduceți următorul cod pentru formularul dvs.:
Dacă pentru programul tău numărul principal este 2, numărul minor este 1 și numărul de revizie este 12, atunci eticheta va afișa: "Version: 2.1.12"
Sfat 184. Crearea propriului dvs. economizor de ecran
Ai avut vreodată dorința de a crea propriul screensaver în VB? Dacă da, acum vă vom arăta un exemplu simplu despre cum se poate face acest lucru. Ideea este foarte simplă - ca un screensaver vor fi emise o formă de dimensiunea întregului ecran, la care poți, dacă dorești, să aplici orice imagine.
Mai întâi, creați un nou proiect standard EXE. Plasați un control de etichetă pe formularul care conține orice text. Apoi, adăugați un control al Timerului pentru care setați proprietatea Interval la 1000 (adică 1 secundă). Acum introduceți următorul cod pentru formularul dvs.:
După aceea, setați proprietatea WindowState pentru formular ca Maximizată, iar caracteristica Stil de graniță ca None. Majoritatea protectorilor de ecran ocupă dimensiunea ecranului complet și nu au o linie de antet.
Alegeți Fișier | Executați fișier EXE și în caseta de dialog Faceți clic pe butonul Opțiuni care apare, faceți clic pe butonul Opțiuni. În următoarea casetă de dialog Proprietăți proiect, tastați șirul SCRNSAVE în câmpul de text Title Title. (De exemplu, putem numi aplicația noastră SCRNSAVE: TestApp1.) Când specificați numele executabilului, nu uitați să modificați extensia: trebuie să fie .SCR în loc de .EXE. (Pentru exemplul nostru, denumiți fișierul executabil ca TestApp1.scr.) Faceți clic pe OK.
Asta e tot. Acum, nu uitați să puneți fișierul SCR în directorul \ Windows \ System și să schimbați economizorul de ecran, așa cum faceți în mod normal cu panoul de control.
Sfat 185. Utilizați cuEvents pentru a adăuga noi funcții controlului
Într-o zi puteți întâlni faptul că controalele standard nu au funcții utile. Pentru a face acest lucru, puteți folosi modul tradițional: scrieți codul dorit pentru evenimentul corespunzător al fiecărui control. Cu toate acestea, în VB5 și VB6 există o comandă WithEvents care oferă o soluție simplă utilizând clasele în astfel de cazuri.
Să presupunem că doriți să introduceți numai litere mari în caseta de text, astfel încât toate literele minuscule pe care le tastați să fie convertite automat la majuscule. În plus, doriți ca mouse-ul să afișeze un tooltip ToolTipText care conține coordonatele cursorului în caseta de text atunci când cursorul mouse-ului lovește caseta de text.
Creați un nou proiect standard EXE, plasați patru controale TextBox cu numele Text1, Text2, Text3, Text4 pe formular și adăugați modulul de clasă. Introduceți următorul cod pentru formularul Form1:
Pentru clasa Class1, introduceți următorul cod:
Folosind acest design de software, veți adăuga noi funcționalități în toate cele patru câmpuri de text. Dar observați că evenimentul KeyPress pentru control este efectuat mai devreme decât apelul la clasă. Prin urmare, în câmpul TextBox4, în loc de "a", "z" va fi introdus, care apoi este imediat convertit la "Z".
Sfat 186. Modificați setul de imagini din controlul ImageList asociat cu controlul Barei de instrumente
În modul de dezvoltare a proiectului, puteți utiliza capacitatea de a adăuga liber imagini în controlul ImageList asociat cu controlul Barei de instrumente Google sau să le eliminați de acolo. Și pentru că VB nu vă permite să schimbați setul de imagini în ImageList în timp ce este legat de bara de instrumente, vă vom arăta o modalitate de a elimina această restricție.
Pasul 1: Completați controlul ImageList. Plasați controlul ImageList pe formular. (Dacă această componentă nu este inclusă în kitul de instrumente al proiectului, îl puteți adăuga după cum se arată în următoarea Sfat 187.) Faceți clic cu butonul din dreapta pe componentă, apoi faceți clic pe Proprietăți pentru a deschide caseta de dialog Pagini de proprietate. Selectați fila Imagini și faceți clic pe butonul Inserare imagine. În caseta de dialog Selectare imagine, găsiți imaginea pe care doriți să o adăugați la controlul ImageList. Dă-i proprietatea unică a cheii. Repetați acești pași până când finalizați controlul ImageList așa cum doriți.
Pasul 2. Adăugarea butoanelor pe bara de instrumente. Faceți clic dreapta pe butonul de control al barei de instrumente, apoi faceți clic pe Proprietăți. În fereastra de dialog Pop-up Pages (Proprietăți), selectați fila Buttons (Butoane). Faceți clic pe butonul Insert Button și în caseta Text cheie, tastați numele unic atribuit imaginii în controlul ImageList. Fiecare buton cu imaginea trebuie să aibă aceeași proprietate cheie cu imaginea corespunzătoare din componenta ImageList. Fiecare buton fără o imagine, de exemplu, tbrSeparator sau tbrPlaceholder, nu ar trebui să aibă proprietatea cheie.
Pasul 3. În evenimentul Încărcare pentru un formular, conectați butoanele ImageList și Bara de instrumente:
Pasul 4. Atribuirea imaginilor la butoanele de pe bara de instrumente:
Sfat 187. Descărcarea controalelor ActiveX
Pentru a utiliza controalele ActiveX care vin cu VB 5.0 / 6.0, trebuie să le adăugați în caseta de instrumente Toolbox.
Pasul 1. În meniul Proiect, faceți clic pe Componente sau faceți clic dreapta pe bara de instrumente pentru a afișa caseta de dialog Componente.
Pasul 2. Elementele listate în această casetă de dialog includ toate obiectele încorporate, designerii și controalele ActiveX înregistrate.
Pasul 3. Selectați caseta de selectare din partea stângă a numelui comenzii pe care doriți să o adăugați.
Pasul 4. Faceți clic pe OK pentru a închide caseta de dialog Componente. Acum, toate controalele ActiveX selectate apar în caseta de instrumente.
Această procedură este foarte simplă, dacă știți exact numele controlului care urmează să fie adăugat. Problema apare atunci când elementul din caseta de dialog Componente conține mai multe componente sau numele diferă de numele componentei. Aici, următorul tabel cu lista controalelor ActiveX livrate împreună cu VB 5.0 / 6.0 vă poate ajuta:
Sfat 188. Utilizarea tipului Date cu sursa de date ADO
Primul lucru care vine în minte atunci când lucrăm cu date în VB este să folosim o variabilă de tipul Date. Cu toate acestea, în realitate, această abordare este incorectă dacă aveți de-a face cu datele Null primite de la sursa de date ADO. Motivul este că comportamentul tipului de date intern Date este diferit de tipul de date ADD adDate.
Pentru a vedea această diferență între Data și adDate, studiați cu atenție următorul cod (pentru VB6, nu uitați să instalați linkul Microsoft ActiveX Data Objects Recordset 2.0, dar același lucru este valabil și pentru Microsoft ActiveX Data Objects 2.0 Library):
O variabilă de tipul String nu este, de asemenea, cea mai bună opțiune, deoarece variabila string Null nu este o reprezentare de dată nulă. Din păcate, în funcție de setarea implicită în DataEnvironment în VB6, când mutați câmpul Date utilizând metoda drag-and-drop, controlul TextBox este plasat pe formular.
Astfel, pentru a obține o reprezentare internă corectă a datei, trebuie să utilizați o variabilă de tip Variant.
Proprietatea App.Path poate fi utilizată pentru a obține calea spre fișierul executabil curent al aplicației. Fiți atenți, totuși, pentru că este posibilă o mică greșeală. Dacă aplicația rulează în directorul rădăcină, va fi adăugată o lunetă de spate la sfârșitul căii. Cu toate acestea, în cazul în care aplicația rulează într-un alt director, rezultatul nu va avea o backslash la sfârșit. Utilizarea următoarei funcții va rezolva această problemă:
De exemplu, AppPath ("test.txt") va adăuga corect numele fișierului, indiferent de directorul în care se află aplicația.
Sfat 190. Exportați conținutul controlului Grid într-un fișier text
Iată o subrutină care este utilizată pentru a exporta conținutul controalelor MSGrid sau MSFlexGrid într-un fișier ASCII de dimensiuni nelimitate. Ca delimitator, puteți specifica orice caracter care vă place. În plus, aveți posibilitatea de a specifica un simbol, care va conține conținutul fiecărei celule. Folosind următoarele, de exemplu, apelând o subrutină, închideți conținutul celulelor în ghilimele duble:
Și subrutina arată astfel: