Hirdetés
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- gban: Ingyen kellene, de tegnapra
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- ldave: New Game Blitz - 2025
- Geri Bátyó: Agglegénykonyha 3 – Paradicsomos káposzta (amit amúgy utálok)
- Geri Bátyó: Agglegénykonyha 2 – Főzés: szabályok, vagy szabadság?
- gerner1
- antikomcsi: Ázsia Expressz 5
Új hozzászólás Aktív témák
-
vilag
tag
Üdv!
Újabb fogós kérdés merült fel.
Egy multipage egyik lapján egy különböző frameeken belűl vannak nekem egy vezérlőim.
A vezérlőkbe beírható karaktereket szeretném korlátozni. Mivel egy részüknél ugyan az a korlátozás szükséges (vagyis csak számok írhatóak be), subrutinná tettem egy eddig vezérlőnként alkalmazott eljárást.
Sub csakszam()
'8: backspace, 9: tabulátor, 13: enter, 17: Ctrl, 32: space, 46: delete, 48-57: felső számok, 86: v, 96-105: numpad számok, 109: numpad mínuszjel, 110: numpad pont, 186: é, 187: ó,
'188: vessző, 189: kötőjel, 190: pont, 191: ü, 192: ö, 219: ő, 220: ű, 221: ú, 222: á, 226:í
If KeyCode = 8 Or KeyCode = 46 Or _
(KeyCode >= 48 And KeyCode <= 57) _
Or (KeyCode >= 96 And KeyCode <= 105) Then
TextBox1.Locked = False
Else
TextBox1.Locked = True
End If
End SubA vezlőnél pedig ez van megírva:
Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) 'Ügyirat alszámba csak számot enged írni
csakszam
End SubGondolom sejtitek, hogy ez így nem működőképes (vagyis nem általánosságban), különben nem írtam volna.
Gondoltam könnyen általánossá tehető a dolog egy huszárvágással, mert a "Textbox1" helyére egyszerűen bevezetek egy változot, amely mindig az aktuális vezérlő nevét helyettesíti.
Azonban úgy nem működőképes a dolog.
Egyik okát tudom: a KeyCode "rendszerváltozó" tartalma nem vihető át egy másik rutinba csak egy változón keresztül (mondjuk azt nem értem miért nem tehető a KeyCode rendszerváltozó egyszerűen publikussá, erre is várok valami okosat ha lehet). Ezt még meg is oldottam.NADE, azt mondja meg valaki, hogy hogyan lehet kinyerni, hogy melyik az aktív vezérlő????
Mert ugyan is ha beteszem mondjuk, hogy:Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) 'Ügyirat alszámba csak számot enged írni
x=ActiveControl
csakszam
End Subakkor az x értéke furcsa módon nem az lesz, hogy "Textbox1", hanem az, hogy "Multipage1".
Pedig a súgója azt állítja, hogy az aktív vezérlő nevét adja eredményül, már pedig én erősen a Textbox1-ben buzerálódom.
Várom a megoldási javaslatokat, esetleg konkrét kódrészlettel is.
Az is érdekelne (ahogy fentebb is írtam, hogy ha meg tudja mondani valaki), hogy a KeyCode rendszerváltozó miért nem tehető publikussá.Köszönöm a segítségeteket!!!!!!!
Új hozzászólás Aktív témák
- Latitude 7440 14" FHD+ IPS i5-1345U 16GB 512GB NVMe magyar vbill IR kam gar
- HP Probook 650 G4, 15,6" FHD IPS, I5-8350U, 16GB DDR4, 512 GB SSD, W11, Számla, 1 év garancia ( olva
- HP Probook 650 G4, 15,6" FHD IPS, I5-7300U, 8GB DDR4, 512 GB SSD, W11, Számla, 1 év garancia ( olvas
- T480s 14" FHD IPS i7-8650U 16GB 256GB NVMe magyar vbill ujjlolv IR kam gar
- HP Probook 650 G2, 15,6" FHD, I5-6300U, 8GB DDR4, 512 GB SSD, W11, Számla, 1 év garancia
- BESZÁMÍTÁS! 4TB Western Digital Purple SATA HDD meghajtó garanciával hibátlan működéssel
- AKCIÓ! ASUS PRO WS W790E-SAGE SE alaplap garanciával hibátlan működéssel
- Dell Precision 5540 i7-9850H 16GB 256GB 15.6" FHD Nvidia Quadro T1000 15.6" FHD 1 év garancia
- 145 - Lenovo Legion Pro 7 (16IRX9H) - Intel Core i9-14900HX, RTX 4090
- Azonnali készpénzes INTEL CPU NVIDIA VGA számítógép felvásárlás személyesen / postával korrekt áron
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest