Hirdetés
- Milyen TV-t vegyek?
- Jól áll az ARM-os Windows helyzete, de a játékoknál nem jön az áttörés
- Milyen videókártyát?
- Soundbar, soundplate, hangprojektor
- Így VERNEK ÁT a KAMU webshopok!
- AMD Navi Radeon™ RX 9xxx sorozat
- Fejhallgató erősítő és DAC topik
- Milyen egeret válasszak?
- Apple MacBook
- UHD filmek lejátszása
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Ú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
- Parkside szerszám kibeszélő
- Mindenki Z Fold7-et akar
- Windows 10
- sziku69: Fűzzük össze a szavakat :)
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Lakáshitel, lakásvásárlás
- Milyen légkondit a lakásba?
- Milyen TV-t vegyek?
- Nyaralás topik
- Kerékpárosok, bringások ide!
- További aktív témák...
- Asztali Konfig - z97 - 4770K - Sapphire RX580 8GB- 8 GB DDR3
- ÚJ, GARIS! Dell Latitude 5450 - 14" FHD / Ultra 5 125U / 16GB DDR5 / 512GB NVMe SSD / HDMI 2.1
- Megkímélt állapotban Samsung Galaxy A51 4/128GB
- Full HD Gaming PC -Z390, i7 -8700K, Vega 56 8GB, 16 GB RAM, 512GB SSD
- Samsung Galaxy A13 4G 4/64 karcmentes kijelzővel
- DELL Latitude 7340 i7-1365U 16GB 1000GB 13.3" FHD+ TouchScren 1 év garancia
- Kodak PD460 Instant Dock Printer / Számla és Garancia
- Fujitsu LIFEBOOK E449 i5-8250U 8GB 256GB 14" FHD 1 év garancia
- MSI CreatorPro Z16P RTX A5500 TOUCH! (vapor chamberrel)
- Telefon felvásárlás!! Samsung Galaxy S21/Samsung Galaxy S21+/Samsung Galaxy S21 Ultra
Állásajánlatok
Cég: FOTC
Város: Budapest