1. kamerák
  2. Car Audio & Electronics
  3. Home Audio
  4. Personal Audio
  5. TV-k
  6. Okos otthon
  >> Elektronikai Technológia Online >  >> Okos otthon >> Okos élet

Hogyan készítsünk számológépet a Visual Basic segítségével

A Microsoft Visual Basic a BASIC nyelven alapuló programozási nyelv, amelyet eredetileg a programozás könnyebb megtanulására fejlesztettek ki. A Visual Basic átveszi a BASIC ismerős parancsait, és objektumorientált eszközöket és felületeket ad hozzá a WYSIWYG-szerű Windows-alkalmazások és webvezérlők tervezéséhez, sok egyéb fejlesztés mellett. A Visual Basic egyik viszonylag egyszerű tanulási projektje egy Windows számológép létrehozása.

1. lépés

Nyissa meg a Visual Basic 6-ot, és válassza ki a „Standard EXE” lehetőséget az új projekt menüjéből. Egy üres űrlap jelenik meg a képernyőn.

2. lépés

Nevezze át a projektet és az űrlapot úgy, hogy a képernyő jobb oldalán, a projektlistában kattintson a "Project1" elemre, és írjon be egy új nevet a Tulajdonságok mező "Név" sorába, aminek meg kell jelennie a projektlista alatt alapértelmezett. Nyomja meg az "Enter" gombot az új név elfogadásához. Tegye ugyanezt az űrlapon (a javasolt űrlapnév a "CalculatorUI"), ügyeljen arra, hogy a "Caption" tulajdonságban is hasonló nevet adjon meg, ami megváltoztatja az űrlap felső sávjában lévő szöveget. Mentse a projektet egy új mappába a számítógépén.

3. lépés

Adjon hozzá gombokat és szövegdobozt az űrlaphoz. Először adjunk hozzá egy szövegdobozt, ahol megjelennek a számológépbe beírt számok, valamint a számítások eredményei. Ehhez válassza ki a TextBox gombot a képernyő bal oldalán található eszköztáron, majd húzza az egérrel a kívánt méretet és helyet a TextBox számára. Miután elhelyezte a szövegdobozt, módosíthatja a méretét és helyét úgy, hogy áthúzza az űrlap másik helyére, vagy húzza a fogantyúkat (a kis négyzeteket) a TextBox szegélye mentén. Ügyeljen arra, hogy a következő sorokat módosítsa a Tulajdonságok ablakban, a TextBox kiválasztásával:"(Name)" =tbResult, "Alignment" =1- Right Justify, "Data Format" =(kattintson a "..." gombra, hogy kijelölés) Szám, "Zárolt" =Igaz és "Szöveg" =0.

4. lépés

Válassza ki a CommandButton ikont az eszköztáron, és hozza létre az első gombot ugyanúgy, ahogy a TextBoxot a gombok hozzáadásához. Referenciaként használja a Windows számológépet Standard nézetben (Programok> Tartozékok> Számológép) a számológép elrendezésének alapjaként, hagyja el az „MC”, „MR”, „MS” és „M+” gombokat. Mindegyik gombon módosítsa a következő tulajdonságokat (példaként a "+" gomb használatával):"(Név)" =btnPlus, "Felirat" =+. Tegye meg ugyanezt a számológép többi gombjával, majd mentse el munkáját. Az űrlapnak most az itt látható példához kell hasonlítania.

5. lépés

Adja hozzá a kódot. Vegye figyelembe, hogy ha a gombok és a szövegdoboz elnevezése nem ugyanaz, mint az itt felsorolt ​​kód elvárása, akkor módosítania kell a neveket, hogy megfeleljen a gomboknak és a szövegdoboznak, vagy módosítania kell a gombokat és a szövegdobozt, hogy megfeleljen ennek a kódnak. Először létre kell hoznunk néhány változót a számológép bemenetének feldolgozásához:

Dim sLeft As String, sRight As String, sOperator As String Dim iLeft As Double, iRight As Double, iResult As Double Dim bLeft As Boolean

Minden számítás négy részből áll:egy szám az operátortól balra (sLeft, iLeft), egy operátor (sOperator), egy szám az operátortól jobbra (sRight, iRight) és egy eredmény (iResult). Annak nyomon követéséhez, hogy a felhasználó bal vagy jobb számot ír-e be, létre kell hoznunk egy logikai változót, a bLeftet. Ha a bLeft igaz, akkor a számítás bal oldala kerül bevitelre; ha a bLeft értéke false, akkor a jobb oldal kerül beírásra.

6. lépés

Inicializálja a bLeft változót. Ezt úgy tehetjük meg, hogy létrehozunk egy Form_Load szubrutint, amelyet vagy begépelhet az itt felsoroltak szerint, vagy automatikusan létrehozhat duplán az űrlap bármely olyan részére, amelyet gomb vagy szövegdoboz nem fed le. A függvényen belül a bLeft-et igazra kell állítanunk, mert az első beírt szám a bal oldali rész lesz:

Private Sub Form_Load() bLeft =True End Sub

7. lépés

Hozzon létre egy szubrutint, amely kezeli a számgombok bármelyikének kattintását. Ezt szubrutinként hozzuk létre, mert minden gombhoz azonos kódot használunk, és egy szubrutin használata azt jelenti, hogy nem kell tízszer megismételni ugyanazt a kódot. Írja be a következőt a Form_Load szubrutin End alsora alá:

Privát Sub AddNumber(sNumber As String) Ha bBal akkor sBal =sBal + sSzám tbResult.Text =sLeft Else sRight =sRight + sNumber tbResult.Text =sRight End If End Sub

Amint látható, ez a függvény egy karakterlánc-paramétert, az sNumber-t vesz fel, amely tartalmazza azt a számot, amelyre a felhasználó rákattintott. Ha a bLeft igaz, akkor ez a szám hozzá lesz fűzve a beírandó számot jelző karakterlánchoz (sLeft), és a tbResult szövegmező frissül az új szám megjelenítéséhez. Ha a bLeft értéke false, akkor ugyanez a művelet az sRight használatával történik.

Végül hozzon létre egy Click eseményfüggvényt minden olyan számhoz, amely az AddNumber szubrutinunkat hívja. Ezt egyszerűen megteheti, ha duplán kattint az egyes számgombokra, amelyek létrehozzák az Ön számára a szubrutin szerkezetét. Ezután adja hozzá a hívást az AddNumberhez, az idézőjelben lévő számot a gombhoz tartozó számmal helyettesítve. A nulla gomb esetében a kód így fog kinézni:

Private Sub btn0_Click() AddNumber ("0") End Sub

Hasonlóképpen, az egy gombhoz a kód így fog kinézni:

Private Sub btn1_Click() AddNumber ("1") End Sub

8. lépés

Kezelje az operátorokat:plusz, mínusz, idő és osztás. Ezt az utolsó lépéshez hasonlóan fogjuk megtenni, létrehozva egy szubrutint, amelyet a Click eseményekben hívunk meg a kezelőgombokhoz. Az alprogram a következőképpen fog kinézni:

Private Sub AddOperator(sNewOperator As String) If bLeft then sOperator =sNewOperator bLeft =False Else btnEquals_Click sOperator =sNewOperator sRight ="" bLeft =False End If End Sub

Ha a bLeft igaz, ami azt jelenti, hogy a felhasználó éppen most lépett be a számítás bal oldali részébe, ez az alprogram az 5. lépésben létrehozott sOperator változót úgy állítja be, hogy megegyezzen a megadott operátorral, amelyet az AddOperator sNewOperator karakterláncként továbbít. A második lépésben a bLeft értéket False értékre kell állítani, mivel az operátor bevitele azt jelenti, hogy a felhasználó beírta az egyenlet bal oldalát. A több operátort összefűző bejegyzések (például 9 * 3 * 2 * 6) kezeléséhez azt is ellenőriznünk kell, hogy a bLeft hamis-e, vagyis a felhasználó olyan operátort írt be, ahol egyenlőt vártunk. Először meghívjuk a Click eseményt az egyenlőséghez (a következő lépésben ismertetjük), amely elvégzi a számítást, és a tbResult-ot a már beírt eredményre állítja. Ezután töröljük az sRight-ot, hogy a felhasználó beírhassa a következő számot, és a bLeft értéket False értékre állítjuk, hogy a program tudja, hogy a számítás jobb oldalára lépünk be.

Végül adjon hozzá egy AddOperator hívást az egyes kezelőgombok Click eseményéhez, ugyanazzal a módszerrel, mint amit a 7. lépésben használtunk a Click események létrehozásához a számgombokhoz. A plusz gomb kódja így fog kinézni:

Private Sub btnPlus_Click() AddOperator ("+") End Sub

Hasonlóképpen a mínusz gomb kódja is így fog kinézni:

Private Sub btnMinus_Click() AddOperator ("-") End Sub

9. lépés

Hozza létre a Click eseményt az egyenlő gombhoz, amely a program legösszetettebb kódja. Hozza létre a szubrutin szerkezetét a többi gombhoz hasonlóan úgy, hogy duplán kattint az egyenlőség gombra az űrlapon. A szubrutin így fog kinézni, ha beírta a kódot:

Privát Sub btnEquals_Click() If sLeft <> "" And sRight ="" És sOperator <> "" Akkor sRight =sLeft End If

If sLeft &amp;lt;&amp;gt; "" And sRight &amp;lt;&amp;gt; "" And sOperator &amp;lt;&amp;gt; "" Then
 iLeft = sLeft
 iRight = sRight

 Select Case sOperator
 Case "+"
 iResult = iLeft + iRight
 Case "-"
 iResult = iLeft - iRight
 Case "/"
 iResult = iLeft / iRight
 Case "*"
 iResult = iLeft * iRight
 End Select

 tbResult.Text = iResult

 sLeft = iResult
 sRight = ""
 bLeft = True
End If

Vége Sub

A kód első három sora ellenőrzi, hogy a számítás mindkét oldalát beírták-e operátorral együtt. Ha csak a bal oldalt és egy operátort adunk meg, akkor a bal oldal értéke jobbra másolódik, így utánozhatjuk a szokásos számológép viselkedését egy bejegyzés kezelésénél, mint például a 9 * =, amely 9-et szoroz önmagával, így kapja meg 81. A kód többi része csak akkor fut le, ha a bal, a jobb és az operátor be van írva, és a számsorok bemásolásával kezdődik az iLeft és iRight Duplagépelt változóinkba, amelyek el tudják végezni a tényleges számításokat. A Select Case utasítás lehetővé teszi különböző kód futtatását attól függően, hogy melyik operátort adta meg, és elvégzi a tényleges számítást, és az eredményt az iResultba helyezi. Végül frissítjük a szövegdobozt az eredménnyel, átmásoljuk az eredményt az sLeftbe, visszaállítjuk az sRight-ot, és beállítjuk a bLeft =True értéket. Ezek az utolsó sorok lehetővé teszik számunkra, hogy a számítás eredményét vegyük, és egy másik számításhoz használjuk fel.

10. lépés

Kezelje az utolsó három kezelőgombot:sqrt, % és 1/x. A négyzetgyök gomb Click eseményénél a kód így fog kinézni:

Privát Sub btnSqrt_Click() If sLeft <> "" Akkor iLeft =sLeft Else iLeft =0 End If

If sRight &amp;lt;&amp;gt; "" Then
 iRight = sRight
Else
 iRight = 0
End If

If bLeft Then
 iLeft = Math.Sqr(iLeft)
 tbResult.Text = iLeft
Else
 iRight = Math.Sqr(iLeft)
 tbResult.Text = iRight
End If

If iLeft &amp;lt;&amp;gt; 0 Then
 sLeft = iLeft
Else
 sLeft = ""
End If

If iRight &amp;lt;&amp;gt; 0 Then
 sRight = iRight
Else
 sRight = ""
End If

Vége Sub

A kód első 11 sora gondoskodik arról, hogy ha az egyenlet egyik oldalához sem adtunk meg értéket, akkor nullát cseréljünk ahelyett, hogy egy üres karakterláncot próbálnánk másolni az iLeft vagy az iRight mezőbe, ami hibát generál. A középső vonalak a négyzetgyök függvényt hajtják végre a számítás aktuális részén, akár balra, akár jobbra. Végül megfordítjuk az elején végzett ellenőrzéseket, így a nulla üres karakterláncként visszamásolódik az sLeft és sRight karakterláncokba.

A százalékos gomb kódja hasonló, egy kivétellel:a százalékos művelet csak akkor hajtható végre, ha a bal és a jobb oldalt is beírjuk.

Private Sub btnPercent_Click() Ha nem bBal akkor If sRight <> "" Akkor iRight =sRight Else iRight =0 End If

iRight = iRight * (iLeft / 100)
 tbResult.Text = iRight

 If iRight &amp;lt;&amp;gt; 0 Then
 sRight = iRight
 Else
 sRight = ""
 End If
End If

Vége Sub

Végül az 1/x vagy tört kattintás esemény, amely nagyon hasonlít a fenti kódhoz:

Privát Sub btnFraction_Click() If sLeft <> "" Akkor iLeft =sLeft Else iLeft =0 End If

If sRight &amp;lt;&amp;gt; "" Then
 iRight = sRight
Else
 iRight = 0
End If

If bLeft Then
 iLeft = 1 / iLeft
 tbResult.Text = iLeft
Else
 iRight = 1 / iRight
 tbResult.Text = iRight
End If

If iLeft &amp;lt;&amp;gt; 0 Then
 sLeft = iLeft
Else
 sLeft = ""
End If

If iRight &amp;lt;&amp;gt; 0 Then
 sRight = iRight
Else
 sRight = ""
End If

Vége Sub

11. lépés

Adjon hozzá kódot a C és CE gombok kezeléséhez. C törli a számológép minden bevitelét, míg a CE csak az éppen beírt számot.

Privát Sub btnC_Click() sLeft ="" sRight ="" sOperator ="" tbResult.Text ="0" bLeft =True End Sub

Privát Sub btnCE_Click() If bLeft Then sLeft ="" Else sRight ="" End If tbResult.Text ="0" End Sub

12. lépés

Futtassa le a számológépet, és végezzen bármilyen számítást. Ez a számológép egyszerűen bővíthető, hogy több műveletet, összetettebb számításokat tudjon elvégezni, vagy akár tudományos számológép is legyen egy kis plusz munkával.

Tipp

Ha hibákat tapasztal, ellenőrizze soronként a kódot, összpontosítva azokra a sorokra, amelyekben a VB hibát tartalmaz, és hasonlítsa össze a fenti kóddal. A cikkben található kódot teljes körűen tesztelték, hogy hibamentes legyen, így hűséges másolása működőképes programot eredményez. Ha a Visual Basic egy korábbi verzióját használja, akkor előfordulhat, hogy problémákba ütközhet, ha a nyelven változtatásokat hajtottak végre a különböző verziókban. A VB korábbi verziói például a Math.Sqr() helyett a Math.Sqrt() függvényt használták a négyzetgyök művelet végrehajtásához. Tekintse meg az adott verzióhoz tartozó hivatkozásokat, hogy megtudja, szükséges-e bármilyen változtatás.


  1. Hogyan készítsünk egy seprű Broom Kukorica
  2. Tudom , hogy az Android alkalmazásokat Visual Basic ?
  3. Tudom , hogy az Android alkalmazásokat Visual Basic ?
  4. Hogyan készítsünk online regisztrációs űrlapot
  5. Hogyan készítsünk szórólapot a Gimp segítségével