![]() |
![]() |
|
|||||||
| Programiranje Programski jezici, tehnike, alatke... |
![]() |
|
|
Alatke vezane za temu | Vrste prikaza |
|
|
#1 |
|
information junkie
|
Reših da otvorim novu temu jer teško da će u SK-u objaviti naše tekstove(?) a ljudi hoće da znaju pa da im pružimo neki primer!
Hajde ja ću da počnem sa jednim malim primerom za ubacivanje datuma i vremena u liniji naslova (form caption)... Otvorite VB>standard EXE Postavite jedan TIMER bilo gde na formi, i podesite INTERVAL na 500 (to je vreme izraženo u milisekundama, odnosno to je 0,5 sekundi, a ako pitate zašto pola sekunde, odgovor je: zato što obezbeđuje precizniji refresh vremena). Naravno, ako nije, onda podesite i ENABLED na TRUE. Kad ste to uradili kliknite dva puta na TIMER, i unesite sledeći kod: Form1.Caption = "Danas je: " & Date & " Trenutno vreme je: " & Time Lepo izgleda, zar ne? Toliko za sada od mene, čitamo se uskoro...
|
|
|
|
|
|
#2 |
|
Mythbuster
|
Samo mala napomena.Nema veze koji interval staviš, Timer je neprecizan, pa je neprecizan, jer dosta zavisi od sistemskih resursa.Možda je čak i bolje u tvom slučaju staviti interval na 1000, jer će biti manji lag.Inače ako je potrebna veća preciznost Timer se ne koristi već API funkcija GetTickCount(), no da ne širimo priču previše o tajmerima sad
|
|
|
|
|
|
#3 |
|
information junkie
|
Prikazano vreme ne zavisi od Timera, pošto funkcija Time i Date vreme 'izvlači' iz sistema. Svrha Timera je u tome da obezbedi pravovremeni refresh, tj. da u trenutku pokaže tačno vreme. Da je interval podešen na 2000 to bi bilo svake 2 sekunde...
No, hvala na primedbi!
|
|
|
|
|
|
#4 |
|
Član
Član od: 6.11.2005.
Poruke: 138
Zahvalnice: 0
Zahvaljeno 4 puta na 4 poruka
|
Khm, khm.
Ovo bi trebalo da je tema VB tutorials, a ne rasprava o kodu. Dakle držimo se teme, ili je u suprotnom zaključajte. A pre nego što se bilo šta postavi kao tutorijal ili ''how to'' treba i proveriti da li je to dobro. I bilo bi dobro da kod izdvajate od ostalog teksta. Kod:
neki kod http://www.benchmark.co.yu/forum/showthread.php?t=59746 pod rb. 14. i 46. |
|
|
|
|
|
#5 |
|
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.306
Zahvalnice: 2.282
Zahvaljeno 5.042 puta na 2.935 poruka
|
Kad smo kod tog vremena, mislim da je bolje izvesti kao pozadinski thread nego preko timera... zar ono beše Windows nema neko krš ograničenje od 16 aktivnih timera?
|
|
|
|
|
|
#6 | ||||
|
Mythbuster
|
Citat:
![]() Citat:
Citat:
Citat:
) gde je tutorijal postavljen je ovdehttp://www.elitesecurity.org/tema/35187 |
||||
|
|
|
|
|
#7 | |
|
Mythbuster
|
Citat:
|
|
|
|
|
|
|
#8 | |||
|
Član
Član od: 6.11.2005.
Poruke: 138
Zahvalnice: 0
Zahvaljeno 4 puta na 4 poruka
|
Citat:
Citat:
Citat:
|
|||
|
|
|
|
|
#9 |
|
V.I.P. GNU/Linux
Član od: 1.11.2005.
Poruke: 11.306
Zahvalnice: 2.282
Zahvaljeno 5.042 puta na 2.935 poruka
|
Po procesu ili ukupno? Sećam se da sam negde (moguće u nekom starijem Win32 Programmer's Referenceu) pročitao da je ograničenje 16 timera za ceo sistem... ne znam da li je pod NT-om situacija drugačija, ali ja to i slične operacije radije izvodim preko threadova... pokažem vreme, Sleep(1000) pa opet... ionako dok Win ništa ne radi prijavljuje tristotinak aktivnih threadova, ovaj moj jedan se tu ni ne oseti
|
|
|
|
|
|
#10 | |
|
information junkie
|
Pa ovo se pretvori u sve sem tutoriala, ne svadjajte se nego nabacite neki trik, može nekom i da koristi!
![]() Citat:
|
|
|
|
|
|
|
#11 | ||
|
Mythbuster
|
Citat:
![]() Citat:
)Kod:
Private Sub Form_Load() Label1.Caption = " www.elitesecurity.org " Timer1.Interval = 200 Timer1.Enabled = True End Sub Private Sub Timer1_Timer() Dim tekst As String Dim r As Long Dim g As Long Dim b As Long tekst = Label1.Caption Label1.Caption = Mid(tekst, 2, Len(tekst)) + Left(tekst, 1) Randomize Timer r = Int(256 * Rnd) g = Int(256 * Rnd) b = Int(256 * Rnd) Label1.ForeColor = RGB(r, g, b) End Sub |
||
|
|
|
|
|
#12 |
|
information junkie
|
He, he... Zanimljivo! Samo, nešto se čudno ponaša skrolujući tekst! Ne skroluje celom širinom labela, već samo na onolikom prostoru koliko je dugačka reč!
Ali, ništa strašno, baš fino izgleda! |
|
|
|
|
|
#13 |
|
Mythbuster
|
Evo još malo
![]() RAZNE SITNICE Q : Kako da u TextBox-u namestim da se umesto unetog teksta ispisuje asterix (*) ? A : Podesite svojstvo PasswordChar umesto praznog polja na "*" (bez navodnika). Q : Kako da ograničim dužinu upisa u Textbox ? A : Podesite svojstvo MaxLength na broj željenih karaktera (recimo, ako želite da može da se upiše maksimalno 10 slova ili brojeva, upisaćete broj 10) Q : Kako da u Textbox-u bude dozvoljen samo unos brojčanih vrednosti ? A : U Keypress event textBox-a, stavite ovaj kod: Kod:
Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 8 'dozvoljavamo backspace kako bi unos mogao da se brise
Exit Sub
Case Is < 48, Is > 58 'ukoliko nije brojcana vrednost
KeyAscii = 0
End Select
End Sub
|
|
|
|
|
|
#14 | |
|
information junkie
|
Citat:
|
|
|
|
|
|
|
#15 |
|
Mythbuster
|
Kako napraviti providnu formu
Kod:
Const LWA_COLORKEY = &H1
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000
Const BM_SETSTATE = &HF3
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function ReleaseCapture Lib "user32.dll" () As Long
Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32.dll" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Private Sub Form_Load()
Me.BackColor = RGB(255, 0, 0)
Dim Ret As Long
Dim clr As Long
clr = RGB(255, 0, 0)
Ret = GetWindowLong(Me.hwnd, GWL_EXSTYLE)
Ret = Ret Or WS_EX_LAYERED
SetWindowLong Me.hwnd, GWL_EXSTYLE, Ret
SetLayeredWindowAttributes Me.hwnd, clr, 0, LWA_COLORKEY
End Sub
|
|
|
|
|
|
#16 |
|
Mythbuster
|
Evo jedan psyhodelic efekat sklepan na brzinu
![]() Kod:
Dim X(100), Y(100), Z(100) As Integer
Dim tmpX(100), tmpY(100), tmpZ(100) As Integer
Dim K As Integer
Dim Zoom As Integer
Dim Speed As Integer
Dim a As Integer
Dim b As Integer
Dim c As Integer
Private Sub Form_Activate()
Speed = 10
K = 4000
Zoom = 300
Timer1.Interval = 1
For i = 0 To 100
Randomize Timer
Z(i) = Int(Rnd * 512) + 1
Next i
End Sub
Private Sub Timer1_Timer()
Randomize Timer
For i = 0 To 50
X(i) = Int(Rnd * 512) - 256
Y(i) = Int(Rnd * 512) - 256
Next i
For i = 0 To 100
Circle (tmpX(i), tmpY(i)), 1000, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 800, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 600, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 400, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 200, RGB(a, b, c)
Z(i) = Z(i) + Speed
If Z(i) > 255 Then Z(i) = -255
If Z(i) < -255 Then Z(i) = 255
tmpZ(i) = Z(i) + Zoom
tmpX(i) = (X(i) * K / tmpZ(i)) + (Form1.Width / 2)
tmpY(i) = (Y(i) * K / tmpZ(i)) + (Form1.Height / 2)
Circle (tmpX(i), tmpY(i)), 2000, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 1800, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 1600, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 1400, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 1200, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 1000, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 800, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 600, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 400, RGB(a, b, c)
Circle (tmpX(i), tmpY(i)), 200, RGB(a, b, c)
|
|
|
|
|
|
#17 |
|
Mythbuster
|
ovo je nastavak koda iz prethodnog posta, pošto isti nije mogao da stane
![]() Kod:
If Z(i) > -200 Then a = Int(Rnd * 256) b = Int(Rnd * 100) c = Int(Rnd * 100) End If If Z(i) > -100 Then a = Int(Rnd * 100) b = Int(Rnd * 100) c = Int(Rnd * 256) End If If Z(i) > 0 Then a = Int(Rnd * 10) b = Int(Rnd * 256) c = Int(Rnd * 256) End If If Z(i) > 100 Then a = Int(Rnd * 256) b = Int(Rnd * 10) c = Int(Rnd * 256) End If If Z(i) > 200 Then a = Int(Rnd * 256) b = Int(Rnd * 100) c = Int(Rnd * 100) End If Next i End Sub |
|
|
|
|
|
#18 |
|
information junkie
|
Evo dva jednostavna načina da se iskoristi gorepomenuto...
Prvo nam treba jedan pravougaonik, kvadrat ili bilo kakav Shape objekat! Nacrtajte i imenujte kao Box1 (originalnog li imena!!!) Dupli klik na prazno mesto na formi, i otvoriće se prozor gde ćemo da ukucamo malo koda! Kada to uradite trebalo bi da dobijete nešto ovako: Kod:
Private Sub Form_Load() End Sub Kod:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) End Sub Ubacite sledeći kod između Kod:
Select Case KeyCode
Case 37 'Left Arrow key
Box1.Left = Box1.Left - 250
Case 38 'Up Arrow key
Box1.Top = Box1.Top - 250
Case 39 'Right Arrow key
Box1.Left = Box1.Left + 250
Case 40 'Down Arrow key
Box1.Top = Box1.Top + 250
End Select
Drugi je da se ubaci sledeće: Kod:
Select Case KeyCode
Case vbKeyLeft 'Left Arrow key
Box1.Left = Box1.Left - 250
Case vbKeyUp 'Up Arrow key
Box1.Top = Box1.Top - 250
Case vbKeyRight 'Right Arrow key
Box1.Left = Box1.Left + 250
Case vbKeyDown 'Down Arrow key
Box1.Top = Box1.Top + 250
End Select
|
|
|
|
|
|
#19 |
|
Novi član
Član od: 4.12.2005.
Poruke: 14
Zahvalnice: 0
Zahvaljeno 0 puta na 0 poruka
|
Ljudi pre svega da se zahvalim na tutorijalima koji su opisani.I ja sam ljustio nekad VB pre 6-7 god pa sam zaboravio oko 80%(a to bi da obnovim)...
ja mislim da treba da trazimo od redakicje SK da stave nesto i o programiranju u casopis a da smanje neke sitnice(flash igrice ili mobilne telefone..ne kazem da bas njih nego navodim primer)pa makar bio i VB ili neki ajde da kazem prost programski jezik... I drugo Ako vec bude tutorijal dajte neke osnovne komande ipak nisu svi profesionalci a i ne bih da pocetnike odmah odvratimo od to(kljucne reci i to)..mislim na reci tipa int,rnd itd... Nadam se da se nije niko uvredio... thanx... |
|
|
|
|
|
#20 |
|
information junkie
|
@Igorak
Vec smo im trazili ali nista od toga! Oni nece da favorizuju neke programske jezike a druge da zapostave, a da bi se svi pomalo opisali treba mnoooogo prostora! Ali mozda bi objavili kad bi neko poslao tekst na editors@sk.co.yu
|
|
|
|
![]() |
| Bookmarks sajtovi |
| Alatke vezane za temu | |
| Vrste prikaza | |
|
|
Slične teme
|
||||
| tema | temu započeo | forum | Odgovora | Poslednja poruka |
| VB -> full screen AVI!? | WAKAWAKI | Programiranje | 6 | 3.7.2008 11:38 |
| C/C++ Source Codes and Tutorials | oluja | Programiranje | 0 | 6.11.2005 19:31 |