OPL-programmering |
Här följer information om strukturen i vissa delar av OPL programmering. Även om dessa är mycket enkla för en riktig programmerare, kan de ge en kick till dig som ännu inte provat att programmera. Här är ett exempel på ett av de enklaste program man kan skriva. PROC namnet: LOCAL namn$(15) PRINT "Vad heter du?" INPUT namn$ PRINT "Så du heter",namn$ GET ENDP |
LOCAL i% int% heltal% LOCAL peng& longint& heltal störrre_än_32000& LOCAL kurs float flyt_tal LOCAL namn$(14) string$ text-sträng LOCAL numbers%(4) string%(4) heltals-array LOCAL foo(4) string(4) flyttals-array LOCAL names$(5,14) string$(5,14) textsträng-arrayTillbaka till OPL innehållsförteckningen
Väntar på inmatning av tecken som avslutas med Enter.
PRINT "Hej, vad heter du?", INPUT namn$
Väntar på första tecken utan Enter.
PROC kchar: LOCAL k$(1) PRINT "Tryck på önskad tangent:" k$=GET$ GET$ ett alternativ till INPUT k$ PRINT "Du valde",k$ Pause 40 ENDPTillbaka till OPL innehållsförteckningen
PROC try_do: LOCAL a% a%=10 DO PRINT "A = ";a% a%=a%-1 UNTIL a$=0 PRINT "Färdigt" GET ENDPTillbaka till OPL innehållsförteckningen
PROC loop: LOCAL i% i%=1 WHILE i%<=2 GOTO takeone:: i%=i%+1 ENDWH GET ENDPTillbaka till OPL innehållsförteckningen
PROC om_om: LOCAL j% initiera:: IF val$="S" OR val$="s" svefim: hoppa till denna procedur, eller om ELSEIF val$="F" OR val$="f" du valde att trycka på tangenten "F" fimsve: så ska du hoppa till denna procedur ELSE GOTO initiera:: om felaktigt val gjordes, börja om igen ENDIF ENDPTillbaka till OPL innehållsförteckningen
Det finns ett antal olika typer av textstilar. Dessa heter 0, 1, 2, och så vidare. Olika typer är:
PROC textstil: gSTYLE 1 :rem gSTYLE 1 ger ARIAL, FET gAT 0,15 :rem X, Y-position på skärmen gPRINT "1 ARIAL FET" :rem texten "1 ARIAL FET" visas på skärmen ENDPTillbaka till OPL innehållsförteckningen
Rita från/till relativ position (gMOVE / gLINEBY) eller ange först absolut position (gAT x,y / gLINETO)
PROC linje: gMOVE 20,40 REM startar linjen på denna relativa plats gLINEBY 420,0 REM ritar 420 pixels i X-led, samma nivå i y-led GET ENDP PROC linje: gAT 20,40 REM Starta linjen på denna absoluta position. gLINETO 440,40 REM Rita till denna absoluta position GET ENDP PROC drawdot: gAT 20,10 gLINEBY 0,0 REM ritar en punkt (pixel) på position X=20, Y=10 GET ENDPTillbaka till OPL innehållsförteckningen
Jag har inte satt mig in i detta tillräckligt.
PROC frames: DEFAULTWIN 1 gGREY 1 aktiverar grå penna gAT 0,0 popsition x,y gFILL gWIDTH, gHEIGHT, 0 fyll allt med grått gGREY 0 gSTYLE 1 gAT 70,50 gPRINT "Texten ska komma här" gAT 50,80 övre X,Y-värde gFILL 300,70,1 gGREY 1 :gFILL 300,70,1 :gGREY 0 gSTYLE 15 gAT 110,120 PRINT "Texten ska komma här" PAUSE 30 gGREY 1 :gFILL 300,70,1 :gGREY 0 gSTYLE 25 gAT 110, 120 gPRINT "Här ere ljust" GET ENDPTillbaka till OPL innehållsförteckningen
PROC return: LOCAL a$(30),b$(2) PRINT"Enter reference and name" INPUT a$ b$=ref$:(a$) PRINT "Ref is:",b$ GET ENDP PROC ref$:(name$) RETURN LEFT$(name$,2) REM LEFT$ takes first two letters of name$ ENDP
PROC Oprocret: LOCAL x,r PRINT "Ange pris:", INPUT x PRINT "Ange moms (ex 0.25):", INPUT r PRINT "Pris, inklusive moms =",tax3:(x,r) GET ENDP PROC tax3:(p1,p2) RETURN p1+p2 % ENDP
PROC Oglobal: GLOBAL varone, vartwo varone=2.5 vartwo=2 PRINT varone, vartwo op: PRINT varone, vartwo GET ENDP PROC op: varone=varone*2 vartwo=vartwo*4 ENDPTillbaka till OPL innehållsförteckningen
Top of page
Psion Program
Shareware
Home