Így a fordító a visual basic!

Igen, valóban, most szabványos eszközökkel megpróbál létrehozni egy programozási nyelv! Ne lepődj meg, de ez nem olyan nehéz, mint amilyennek látszik első pillantásra. Természetesen, mielőtt a jelen fordító messze, de ez csak egy példa, és akkor mindent korlátozott, csak a képzelet és a készség.
Nos, kezdjük. Kezdeni valamikor hívjuk az új nyelvet. Nos, például egyszerű programozási nyelv - rövidítve SPL. Bármilyen programozási nyelv három részből áll:
a) szintaxis szabályai;
b) az üzemeltetők;
c) a fordító maga.
Kezdjük talán a bekezdés a. szabályai szintaxis tudunk létrehozni ilyen. Let it
ugyanaz lesz szabályok vonatkoznak, mint alapvető, de az orosz szintaxis hogy a helyén van:
Ha x = 0 Then MsgBox "Hiba"
akkor írja méltó:
Ha X = 0, akkor tájékozott „hiba”
pravdali nem nagyszerű?
Bekezdés b. Nos, ha úgy döntöttünk, Basic, majd szereplők ugyanaz lesz, mint az alapvető, de az orosz, az, hogy láttad a fenti példában.
És végül a legfontosabb és legérdekesebb - a végrehajtás a nyelv, azaz a teremtés a fordító.
Nyílt Visual Basic, és hozzon létre egy új projektet is - Normál EXE.
Előttünk egy üres forma. Elkezdjük rajzolni. Változás néhány tulajdonságát a formában (a változás a Properties panel):
Név = frmMain - közkeletű nevén az alapvető formája;
Caption = „Egyszerű programozási nyelv verziója 1.0.0” - itt írhatsz amit a szíved vágyait programozó!
Csak változtatni a hosszát és szélességét a fő formája az Ön.
És mégis, a változás a BorderStyle 1 - Rögzített egységes és MinButton True. Most már betiltották az űrlap átméretezett.
Abból, amit a program áll? Persze, először létre kell hoznunk egy szövegdobozt, ahol a felhasználó ír be a kódot.
Tehát kattintson a TextBox gombra az eszköztáron.

Ezután húzza a címke komponens a formában. Állítsa be a kívánt hosszúságú és szélességű, és ügyeljen arra, hogy módosítsa a MultiLine tulajdonságot True. Ez lehetővé teszi, hogy írjon a kódot a szöveges mező nem egy vonal, hanem több. Szintén gördítősávját ingatlan kell állítani a 2 - Függőleges. Ugyanakkor a szövegbevitel során a felhasználó a programunk jobb görgetősáv jelenik meg. By the way, a beviteli mező hívtam txtCode (Name = txtCode).
Most azt hiszem, akkor létre kell hozni egy pár gomb, ami valójában elvégzi azokat a főbb intézkedéseket a program. Ez a „Run” gombra, és a „Kilépés”. Azt is hozzá még néhány gombot, hogy a szeretet, és azt fogja magyarázni, hogy mit tennének a két gombot. Nem nehéz kitalálni, hogy az első gomb elindítja a kódot, amely illeszkedik a felhasználó, és a második - a kiutat a program. Ezért helyezni Caption tulajdonság az első kapcsolat „Running”, a második „Exit”.

Ez cserélni vba6.dll vba5.dll és távolítsa Private. Most programozható gomb. Mit kell írni a gyártási folyamat során, préselés (Click) a kilépés gomb, tudjuk:
Private Sub cmdExit_Click ()
vég
End Sub
Mint tudja a program kilép, hogy ki van kapcsolva, miután vége eseménykezelő. Most megy a programozás, a második, és a legfontosabb, a gombok. Ő ezt a funkciót használja, a lehetőséget, amit a fent leírt, átalakítja sima szöveget végrehajtható kódot. Tehát, először ellenőrizze, hogy a szöveg tartalmazza a beviteli mezőbe:
Ha Len (txtCode.Text) <> 0 Then
és ha minden rendben van, megy tovább. Állapítsa változókat, amelyek segítenek minket:
Dim eredményt logikai, Code As String
Az eredmény-változó lesz a visszatérési érték a függvény EbExecuteLine. A változó kód szöveget, amelyet majd a hajó feldolgozásra, úgyhogy be ezt a változót, hogy a szöveget a beviteli mezőbe:
Code = txtCode.Text
Most, a változó kód értékét tartalmazza a beviteli mezőbe. A EbExecuteLine funkció van egy hátránya - nem tudja kezelni az új sor karakter (a BASIC vbCrLf), de megérti a kettőspont (:), és annak szükségességét, hogy kihasználják azt. Tehát helyett vbCrLf a vastagbélben:
Code = Csere (Code, vbCrLf, ":")
Úgy döntöttünk, hogy mi lesz egy orosz szintaxist, de EbExecuteLine funkció megérti csak angol szereplők, így az összes orosz szolgáltatók, akik megfelelnek a program lefordítja angolra:
Code = Csere (Code, "ha", "ha". 2)
Code = Csere (kód: "Akkor", "Akkor". 2)
Code = Csere (Code "Üzenetek", "MsgBox". 2)
Code = Csere (Code, "A", "A". 2)
Kód = Cserélje (kód, "Up", "To". 2)
Code = Csere (Code "Folytatása", "Tovább" gombra. 2)
2. ábra a végén Cserélje azt jelenti, hogy karaktereket kell cserélni függetlenül a nyilvántartásból, ahol tartózkodnak. Felvehet más szereplők számára. Én csak a leggyakrabban használt. Továbbra is az utolsó -, hogy a kódot a mezőbe:
Eredmény = EbExecuteLine (StrPtr (kód), 0, 0, False) = 0
és ha van egy hiba jelentést erről:
Ha Eredmény = False Then MsgBox „Hiba a szintaxis a program!” _ VbCritical „SPL által Daniyar Atadjanov”
txtCode.SetFocus

Nos, ez minden. Itt az ideje, hogy írja be a kódot, hogy indul, ha a felhasználó nem írt szöveget a mezőbe:
más
MsgBox "kód beviteli mező nem lehet üres stkrokoy!", VbCritical, _ "SPL által Daniyar Atadjanov"
End If

Az alábbiakban bemutatjuk a teljes kódot a program:

És most a legnagyobb a legérdekesebb. Azt próbálja meg a területen, mint például ez:
frmMain.Hide
SMS-ben „Viszlát!”
frmMain.Show
Msg "Hello!"

Kapcsolódó cikkek