[ GazdaSale @ 30.04.2007. 17:03 ] @
Moze li neko napisati primer coda digitrona u vb. Recimo samo 2 broja i jedna racunska operacija??? |
[ GazdaSale @ 30.04.2007. 17:03 ] @
[ Aleksandar Ružičić @ 01.05.2007. 17:36 ] @
stavi na formu tri TextBox-a i jedan CommandButton, i prekopiraj ovo:
Code: Private Sub Command1_Click() Text3.Text = CStr(Val(Text1.Text) + Val(Text2.Text)) End Sub [ GazdaSale @ 01.05.2007. 18:46 ] @
Hvala, jel zna neko jos nesto???
Ja bih hteo nesto ovako... ![]() [ rgdrajko @ 02.05.2007. 11:27 ] @
Code: Dim zbir As Integer Dim pritisnutjetasterplus As Boolean Private Sub Command1_Click() If pritisnutjetasterplus = True Then Text1.Text = "" pritisnutjetasterplus = False End If Text1.Text = Text1.Text & Command1.Caption End Sub Private Sub Command2_Click() If pritisnutjetasterplus = True Then Text1.Text = "" pritisnutjetasterplus = False End If Text1.Text = Text1.Text & Command2.Caption End Sub Private Sub Command3_Click() zbir = zbir + Val(Text1.Text) Text1.Text = zbir pritisnutjetasterplus = True End Sub Private Sub Form_Load() Command1.Caption = "1" Command2.Caption = "2" Command3.Caption = "+" End Sub [ GazdaSale @ 02.05.2007. 17:08 ] @
Hvala, uspeo sam, ali treba mi jos malo pomoci.
Kakav bi bio kod za = I za ostale racunske radnje - / x [Ovu poruku je menjao GazdaSale dana 02.05.2007. u 18:54 GMT+1] [ rgdrajko @ 02.05.2007. 19:01 ] @
Pa pokusaj nesto i sam da uradis oko tog digitrona. Dobio si osnovni kod za ono sto si trazio.
[ GazdaSale @ 02.05.2007. 20:46 ] @
Ok, hvala.
Pokusacu! [ rgdrajko @ 06.05.2007. 21:51 ] @
Evo kompletan kod za digitron.
[ GazdaSale @ 13.05.2007. 13:53 ] @
Sta mi ne valja u dugmetu MINUS???
Code: Deklaracija: Dim razlika As Integer Dim pritisnutjetasterminus As Boolean Kod za dugme: Private Sub Command3_Click() razlika = razlika - Val(Text1.Text) Text1.Text = razlika pritisnutjetasterminus = True End Sub [ rgdrajko @ 14.05.2007. 01:39 ] @
Ok evo na brzinu sam uradio ceo digitron sa svim brojevima, plus, minus, jednako i tasterom CE za brisanje. Sam uradi za mnozenje i deljenje. Poslao sam ti kod za digitron(kalkulator) koji je uradio slavni Microsoft. Sta njemu fali, zasto ga ne iskoristis.Ti vidi koji ti je laksi za ispravku.
Code: 'Program: Digitron 'Sastavio: rgdRajko 'Datum: 14.05.2007 'Verzija: 1.0.1 'Deklaracija Dim memorisano As Long Dim zbir As Long Dim pritisnutnekiodtasterasabrojevima As Boolean Dim pritisnutjetasterplus As Boolean Dim vecjepritisnutjetasterplus As Boolean Dim pritisnutjetasterminus As Boolean Dim vecjepritisnutjetasterminus As Boolean Dim pritisnutjetasterjednako As Boolean 'Tasteri 0 do 9 Private Sub cmdBroj1_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj1.Caption) End Sub Private Sub cmdBroj2_Click() txtDisplej.Text = Val(txtDisplej.Text & cmdBroj2.Caption) pritisnutnekiodtasterasabrojevima = True End Sub Private Sub cmdBroj3_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj3.Caption) End Sub Private Sub cmdBroj4_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj4.Caption) End Sub Private Sub cmdBroj5_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj5.Caption) End Sub Private Sub cmdBroj6_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj6.Caption) End Sub Private Sub cmdBroj7_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj7.Caption) End Sub Private Sub cmdBroj8_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj8.Caption) End Sub Private Sub cmdBroj9_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj9.Caption) End Sub Private Sub cmdBroj0_Click() Call proverazatasteresabrojevima txtDisplej.Text = Val(txtDisplej.Text & cmdBroj0.Caption) End Sub 'Dugme "+" Private Sub cmdPlus_Click() If pritisnutnekiodtasterasabrojevima = True Then If pritisnutjetasterplus = True Then zbir = memorisano + Val(txtDisplej.Text) memorisano = zbir vecjepritisnutjetasterplus = True txtDisplej.Text = zbir End If If pritisnutjetasterminus = True Then zbir = memorisano - Val(txtDisplej.Text) memorisano = zbir txtDisplej.Text = zbir End If End If pritisnutjetasterplus = True pritisnutjetasterminus = False vecjepritisnutjetasterminus = True If vecjepritisnutjetasterplus = False Then memorisano = Val(txtDisplej.Text) vecjepritisnutjetasterplus = True End If pritisnutnekiodtasterasabrojevima = False End Sub 'Dugme "-" Private Sub cmdMinus_Click() If pritisnutnekiodtasterasabrojevima = True Then If pritisnutjetasterminus = True Then zbir = memorisano - Val(txtDisplej.Text) memorisano = zbir vecjepritisnutjetasterminus = True txtDisplej.Text = zbir End If If pritisnutjetasterplus = True Then zbir = memorisano + Val(txtDisplej.Text) memorisano = zbir vecjepritisnutjetasterplus = True txtDisplej.Text = zbir End If End If pritisnutjetasterminus = True pritisnutjetasterplus = False vecjepritisnutjetasterplus = True If vecjepritisnutjetasterminus = False Then memorisano = Val(txtDisplej.Text) vecjepritisnutjetasterminus = True End If pritisnutnekiodtasterasabrojevima = False End Sub 'Dugme "=" Private Sub cmdJednako_Click() If pritisnutjetasterjednako = False Then If pritisnutnekiodtasterasabrojevima = True Then If pritisnutjetasterplus = True Then zbir = memorisano + Val(txtDisplej.Text) memorisano = zbir txtDisplej.Text = zbir End If If pritisnutjetasterminus = True Then zbir = memorisano - Val(txtDisplej.Text) memorisano = zbir txtDisplej.Text = zbir End If End If End If pritisnutjetasterjednako = True pritisnutjetasterplus = False vecjepritisnutjetasterplus = False pritisnutjetasterminus = False vecjepritisnutjetasterminus = False End Sub 'Dugme CE za brisanje svega Private Sub cmdCe_Click() vecjepritisnutjetasterplus = False pritisnutnekiodtasterasabrojevima = False memorisano = 0 txtDisplej.Text = "0" End Sub Private Sub Form_Load() txtDisplej.Text = "0" cmdBroj1.Caption = "1" cmdBroj2.Caption = "2" cmdBroj3.Caption = "3" cmdBroj4.Caption = "4" cmdBroj5.Caption = "5" cmdBroj6.Caption = "6" cmdBroj7.Caption = "7" cmdBroj8.Caption = "8" cmdBroj9.Caption = "9" cmdBroj0.Caption = "0" cmdPlus.Caption = "+" cmdMinus.Caption = "-" cmdJednako.Caption = "=" cmdCE.Caption = "CE" End Sub Public Sub proverazatasteresabrojevima() If vecjepritisnutjetasterplus = True Then vecjepritisnutjetasterplus = False txtDisplej.Text = "" End If If vecjepritisnutjetasterminus = True Then vecjepritisnutjetasterminus = False txtDisplej.Text = "" End If pritisnutnekiodtasterasabrojevima = True pritisnutjetasterjednako = False End Sub [ Aleksandar Ružičić @ 14.05.2007. 13:09 ] @
Dim pritisnutnekiodtasterasabrojevima As Boolean??? 33 karaktera u imenu promenljive? Nadam se da ti ovo nije praksa. Citljivije bi bilo da si koristio CamelCase verziju ali opet je mnogo dugacko!
[ rgdrajko @ 14.05.2007. 14:53 ] @
Do 40 znakova je dozvoljeno ime promenljive. Bolje je kada se zna sta promenljiva radi za kasnije kada se ispravlja .
Svako ima neko svoje iskustvo. Za ovih 25 godina sam uvideo da je tako bolje. [ dennycd2 @ 14.05.2007. 15:49 ] @
Nisam želeo da se uključujem u ovu temu, jer sam od početka smatrao da postoji Microsoft-ov "Calc" kôd i da se iz njega mogu videti svi principi koji su za ovaj program potrebni. Ne bih ni sada da se nije pojavio ovaj glomazni kôd sa mamutskim promenljivama. Moje mišljenje je da ovo nije način na koji bi trebalo da se vrši edukacija i da treba poštovati opšte poznate i priznate načine programiranja koliko god to nekom bilo lakše ili ne.
@rgdrajko - Zaista nemam nameru da potcenim nečije znanje i iskustvo, ali naprosto ovako nešto ne treba "negovati". [ Aleksandar Ružičić @ 14.05.2007. 16:19 ] @
@rgdrajko: ne znam odakle ti podatak o "dozvoljenoj" duzini imena promenljive, niko ti ne brani ni da svojoj promenljivoj das ime od 100+ karaktera ako tvoj kompajler to podrzava, ali kao sto dennycd2 rece ovo nije nacin kojim bi trebalo da se prenosi znanje, pogotovu pocetnicima.
evo ja sam na brzinu napisao jedan kalkulator (prikacen uz poruku)... [ dennycd2 @ 14.05.2007. 16:33 ] @
I ja sam nešto slično napravio, pa da ne bude baš uzalud.
[ Shadowed @ 14.05.2007. 17:07 ] @
NumberPressed (u konretnom slucaju) bolje od
NumberButtonPressed mnogo bolje od PritisnutNekiOdTasteraSaBrojevima bolje od pritisnutnekiodtasterasabrojevima Razlog nije duzina promenljive, vec duzina celog reda. U ovom slucaju se to ne primecuje toliko, ali akoimas negde izraz koji ukljucuje 5-6 promenljivih.. nepregledno je. E sad, slazem se da svako radi onako kako mu odgovara. Medjutim, vreme (duze od 15god.) je pokazalo da vecini ne odgovaraju tako duga imena promenljivih a kako se kod retko pise samo za svoje oci, preporucljivo je koristiti onaj nacin koji vecini odgovara. Naravno, nije obavezno. [ rgdrajko @ 14.05.2007. 17:41 ] @
Postovani, pogledao sam vas kodove. Kada ja sa skoro 30 godina u programiranju u bejziku ne mogu na brz i lak nacin da razumem logiku vasih Digitrona odnosno kalkulatora, kako ce tek pocetnik to razumeti. Vasa primedba u vezi dugih imena varijabli je na svom mestu. Ovde sam namerno napisao tako duga imena da gospodin koji je zapoceo ovu temu razume o cemu se radi, pri cemu izbegavam da koristim engleska imena, po onom "govori srpski da te ceo svet razume".
Neka gospodin koji je zapoceo ovu temu presudi koji je od 4 gore ponudjenih digitrona najlaksi za razumevanje. [ goranvuc @ 14.05.2007. 17:44 ] @
Sto se tice konvencija i standarda za imenovanje u VB-u mislim da tu ne treba trositi reci i raspravljati se oko toga, evo sta Microsoft kaze http://msdn2.microsoft.com/en-us/library/aa240822(VS.60).aspx a inace to je nesto sto se stalno menja, tako da se vec za .NET standardi znatno razlikuju (napusta se madjarska notacija - izmedju ostalog).
Sto se mene tice, ako neko radi samo za sebe nije bitno koji standard koristi - bitno da ima neka pravila koja postuje (zbog sebe), a ako se radi u timu, ili ako neko drugi treba da cita tvoj kod (npr. ovde na elitesecurity) onda bi bilo kulturno da se poznaju i postuju osnovni standardi, a ne da neko sebi daje za pravo da donosi konacan sud. Sto se mene tice zovi ti promenljivu "vecjepritisnutjetasterminus" ako hoces (cini mi se da ima puno "je" u nazivu) ali mene, a i vecinu drugih koji to treba da citaju to iritira zato sto smo navikli na standarde. Sto se tice digitrona, ne vidim zasto bi se pisao program za to, ali OK je u edukativne svrhe. Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|