Visual Basic
Jelentkezz be a hozzászóláshoz.
(O_o)
pls help
kérdésedre válaszolva: csakis érdeklõdés kérdése 2-3 év alatt teljesen elsajátítható ez a szenzációsan egyszerû felépítésû nyelv. Tehát életkorod tudta nélkül a válaszom IGEN!
Dim hiba As Boolean
Private Sub cikk_Exit(ByVal Cancel As MSForms.ReturnBoolean)
hiba = False
wcikk = cikk.Value
If cikk = 0 Then
ElseIf cikk < 1000000000 Then
hiba = True
ElseIf cikk > 9999999999# And cikk < 1000000000000# Then
hiba = True
ElseIf cikk > 9999999999999# Then
hiba = True
End If
End Sub
Private Sub CommandButton1_Click()
If hiba = True Then
MsgBox ("Ez nem cikkszám")
cikk.SetFocus
cikk = ""
Else
End
End If
End Sub
szerintem
EXCEL-ben szerkesztettem egy formot több textbox-szal. Ez az elsõ textbox-sza, de nem tudom a hiba esetén újra bekérni.Próbáltam a fokuszt visszaállítani nem sok sikerrel.Ha a bekért szám 10 jegyû akkor cikkszám és jó, ha 13 jegyü akkor vonalkód és az is jó. Itt az ettõl eltérõ beírást szûrném.
Még nem a tutit megoldást keresem, elég ha valami megközelítõleg azt csinálja amit én akartam tõle.
(Nincs egy jó könyvem ami kezdõket is eligazítana, így csak vaktában próbálkozok. Vagy esetleg egy használható tanfolyam? Ha van javaslatotok ....)
én inkább 1 inputbox-al és command -gombal csinálnám meg persze ciklussal de nemtom h jól értettelek e
az csak ennyi:
Private Sub CommandButton1_Click()
Do Until cikk = 0
cikk = InputBox("ird be a cikkszámot", "input")
Loop
End
End Sub
csak azért hogy már én is segítsek vkinek
Private Sub Cikk_Exit(ByVal Cancel As MSForms.ReturnBoolean)
wcikk = Cikk.Value
If Cikk = 0 Then
ElseIf Cikk < 1000000000 Then
MsgBox "Ez nem cikkszám"
ElseIf Cikk > 9999999999# And Cikk < 1000000000000# Then
MsgBox "Ez nem cikkszám"
ElseIf Cikk > 9999999999999# Then
MsgBox "Ez nem cikkszám"
End If
másik.
lehet-e a windows felhasználónak jelszót létrehozni saját prg-ból a vezérlõpult nélkül/felhasználók nélkül a rendszer win-xp lenne.
Arra gondolok, hogy milyen elvek szerint mûködik, ami alapján már lehetne programozni.
Private Sub Form_Load()
Text1 = Winsock1.LocalIP
End Sub
P3 Celeron 1000 Mhz, 512 MB SDRAM, Ati Radeon 9550 256 MB, Maxtor 160 GB Minek több?
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
C2Q Q9550, ASUS P5Q DLX 2x2GB OCZ REAPER 1066 CL5 MSI 8800GTS 512 OC, WD VelociRaptor 150G
Arra gondoltam, hogy, ha tudnám mikor van pl. a tálcán a progi, akkor megirhatnám a resizeba, hogy tedd ezt vagy azt, kivéve, ha nincs ott. Most az On Erroe Resume Next sorral kompenzálom ezt a dolgot, de talán van jobb megoldás.
a text.change esemény alkalmas rá, ott szintén as isNumeric() függvénnyel letilthatod a szöveg beírását. Viszont jobban javaslom a már említett Clipboard objektum ellenõrzését mégpedig a keypress eseményben. Tehát akár egy felh függvényben is jól néz ki a dolog:
function vagolapSzamE() as boolean
dim var
var = clipboard.gettext
if isnumeric(var) then
vagolapSzamE = true
end if
end function
így csak meg kell hívni a keypress eseményben: If vagolapSzamE = True then és már illeszthetõ is be a szövegmezõbe
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
a = Clipboard.GetText
b = IsNumeric(Clipboard.GetText)
If KeyCode = vbKeyControl Then
If Not (IsNumeric(Clipboard.GetText)) Then
Clipboard.Clear
End If
End If
End Sub
Ha az isNumeric(clipboard.getText) false értéket ad vissza, akkor a vágólap tartalma nem szám (pl. "abc1122" is false értéket ad, mivel tartalmaz legalább egy nem numerikus karaktert), szerintem ez jó megoldás lenne, ebben az esetben figyelmen kívül kell hagyni a beillesztést.
A copy-paste mûködik, de csak az egér jobb klikkes menünél. De ez az én verziómnál is mûködött. Én azt szeretném, ha a ctrl+c, x és v mûködne, úgy, hogy csak számokat enged beírni. Tehát még ezeket a billentyûkombinációkat is kéne engedélyezni, de nem ismerem, a kódjukat, amit figyelni kéne.
A másik probléma ezzel, hogy, engedi, hogy betüt kopizzon a szövegdobozba. Ilyenkor miért nem nullázza ki a betüket? Ilyenkor külön kell figyelnem a bennt lévõ karaktereket? Vagy van valami egyszerübb módja ennek?
Private Sub Text10_KeyPress(KeyAscii As Integer)
If KeyAscii = 8 Then Exit Sub
If KeyAscii < 48 Or KeyAscii > 57 Then
KeyAscii = 0
End If
End Sub
Közben felvetõdött bennem még egy kérdés<#nevetes1>#nevetes1> (nyugi van belõle bõven)
Van egy szövegdobozom, amibe azt szeretném, hogy csak számokat írhasson be a felhasználó.
Addig oké, hogy ezt teszem:
Private Sub Text10_KeyPress(KeyAscii As Integer)
If (KeyAscii < Asc("0") Or KeyAscii > Asc("9")) And KeyAscii <> 8 Then
KeyAscii = 0
End If
End Sub
De szeretném, hogy a copy-paste is mûködhessen, tehát a ctrl+c és a ctrl+v.
azért kellene ez az install,mert csinálunk a haverokkal,egy progit v.mi versenyre.... nem terhelnék senkit ezzel,de dobhatnátok egy hasznos linket...<#alien>#alien><#merges3>#merges3><#ravasz1>#ravasz1>
a screen objektum tartalmazza az aktuális képernyõméretet pixelben. Tehát a Screen.Widht illetve Height által ki lehet számolni a képernyõfelbontást, innen már csak át kell méretezned az aktuális formot futásidõben. (probléma lehet a vezérlõk helyzete a formon, mert azok nem mozdulnak form átméretezéskor!)
második kérdésre:
legegyszerûbben a winsock-al, (Microsoft WinSock Control lásd CTRL+T) annak van egy LocalIP tulajdonsága ami a helyi gép IP címét adja vissza.
A következõ probléma megoldásában kérem a sagítségeteket: Készítettem egy progit, VB5ben, egy egyablakos alkalmazást. Én otthon a monitorom 1280x1024ben használom, de ahova telepítve lett a rendszer, más felbotásokat alkalmaznak. Ennek köszönhetõen, kisebb, nagyobb részek nem látszanak a felhasználói felületbõl.
Milyen megoldásokkal lehetne ezen változtatni?
Egy dolgot, próbáltam, hogy az ablak méretétõl függõen berendezem egymás mellé, vagy alá az objektumokat, de ez sem elegendõ megoldás.
Esetleg létezik valamilyen scale, amit alkalmazni lehetne, vagy egyáltalán mi erre az elegáns megoldás?
Egy másik programommal kapcsolatban, egy másik kérdés.😊 Van e lehetõség beolvasni valamilyen gépazonosítót? Arra lennék kíváncsi, hogy hogyan tudnám a progival megnézni azon gép IP címét, amin éppen fut. Vagy bármilyen másik azonosító jó lenne amivel be lehet lõni, hogy egy belsõ hálón melyik géprõl van szó.
CPU Tuning Toplista http://cputuning.net
a progress bar mûködése egyszerû, a min és a max közti értéket mutatja futásidõben.
vagy ha a telepitesre megy ra,akkor hogy mondom meg,hogy mit hova masoljon.meg az a szazalek csik is erdekelne....
elore is kossz a segitseget!
a kód csak ennyi:
timerben: form1.print randomcucc, form1.refresh
100ms az idõzítés
CPU Tuning Toplista http://cputuning.net