Harjoittelen Visual Basicilla koodaamista (versiolla 3.0) ja teen parhaillaan laskinta. Muuten kaikki koodit, ulkoasu jne. on valmiina, mutta yksi koodinpätkä uupuu: eli laskimessa on kaksi tekstiboxia (toiseen näppäillään laskettava lauseke esim. 1 1-3 ja toiseen tulee tulos), mutten keksi miten saisin ohjelman suorittamaan text1:sen lauseketta. Eli kun on näppäillyt laskutoimituksen lukee text1 boxissa 1 1. Ilmeisesti = -painikkeeseen tarvittaisiin jonkinlainen suorituskäsky, esim. text2 = run"text1" tai jotain.
Osaisiko kukaan siis kertoa millä komennolla/koodinpätkällä = -painike toimisi? KIITOS!
Laskimen teko takkuaa, apua tarvitaan
2
442
Vastaukset
- vb2005
Hieman helpommalla olisit päässyt, jos olisit tehnyt tuon toisella tapaa eli lukemalla näppäimien painallukset. Tekstivaihtoehdosta löysin seuraavan esimerkin:
http://www.programmersheaven.com/download/43994/download.aspx
Esimerkissä oleva evaluate -funktio (func.frm:ssa) tekee sen laskennan.- xxxxx
Itse olen tehnyt tuollaisia ohjelmiini jotenkin siten, että ensin etsin ensimmäisen operaattorin ja sitten seuraavan summan.
Koodina jotenkin näin (kotikoneessani ei ole vb:tä, joten en voinut testata asiaa):
dim i as integer, OperaattorinPaikka as integer,Operaattori as string,EdOperaattori$
dim Tulos as double, Luku as double
dim KokoLaskukaava as String'sisältää siis esim 33 4*5
Tulos=0
EdOperaattori$=" "'eka luku aina ynnätään
while kokolaskukaava""
OperaattorinPaikka=0
for i=1 to len(KokoLaskukaava)
operaattori$=mid$(KokoLaskukaava,i,1)
if instr(1," -*/",Operaattori$) then OperaattorinPaikka=i:exit for
next
if OperaattorinPaikka=0 then OperaattorinPaikka=Len(KokoLaskukaava) 1
Luku=val(mid$(KokoLaskukaava$,Operaattorinpaikka-1))
KokoLaskukaava$=mid$(KokoLaskukaava,Operaattorinpaikka 1)
select case EdOperaattori$
case " ":Tulos=Tulos Luku
case "-":Tulos=Tulos-Luku
case "*":Tulos=Tulos*Luku
case "/":Tulos=Tulos/Luku
end select
EdOperaattori$=Operaattori$'seuraavaksi on tämän -*/ vuoro
wend
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Työeläkeloisinta Suomen suurin talousongelma
Työeläkeloisinta maksaa vuodessa lähes 40 miljardia euroa, josta reilut 28 miljardia on pois palkansaajien ostovoimasta.2812926Veroaste on Suomessa viitisen prosenttiyksikköä liian matala
Veropohjaa on rapautettu käytännössä koko kulunut vuosituhat, jonka vuoksi valtion menoja on jouduttu rahoittamaan velka572326Israel euroviisujen 2.
Israel sai taas eniten yleisöääniä. Suomesta täydet 12 pistettä, poliittinen ”ammattiraati” antoi 0 pistettä. Hyvä Is3482007- 1151733
Euroviisut ei enää niin musiikkikilpailu?
Kappaleiden taso ei enää ole mikä sijoituksen ratkaisee.Eikö kukaan ihmettele että Israel pärjää lähes joka vuosi kisois1231694Mun mielestäni on tosi loukkaavaa
Nainen, että luulet palatan typeriä, sekavia ja ilkeitä viestejä mun kirjoittamiksi. Mä en ole katkera, epätoivoinen, ra2121375- 661317
- 681253
- 581242
Rakas nainen ymmärsin
Että minun pitää pitää kiinni sinusta. Haluan, että sä olet onnellinen. Olet mulle se oikea ja mä sulle. Rakastan Sua yl771191