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
358
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
20e Riskitön veto 20e talletuksella VB:lle
Pssst! Vinkki viis rotvallinreunalla eläjille. VB tarjoaa 20 euron riskittömän vedon ensitallettajille vedonlyöntiin.42447- 1161617
Viiimeinen viesti
Sinulle neiti ristiriita vai mikä nimesi sitten ikinä onkaan. Mulle alkaa riittää tää sekoilu. Oot leikkiny mun tunteill361356Analyysiä: Kiuru-keissi oli ja meni - demarit hävisi tässäkin
Tapauksen tultua julki alkoi demarit ja muu vasemmisto selittään, että tämä oli poliittista väkivaltaa, siis ennen kuin1561181- 521095
- 1131082
Suomessa on valittava 2 lucia neitoa...
Maahanmuuttajille oma lucia neito ja Suomalaisille oma SUOMALAINEN Lucia neito....sama juttu on tehtävä miss Suomi kisoi1051044- 571041
Olet tärkeä
mutta tunnen jotain enemmän ja syvempää. Jos voisinkin kertoa sinulle... Olen lähinnä epätoivoinen ja surullinen.46909- 60882