Hirdetés
- Melyik tápegységet vegyem?
- Vezetékes FEJhallgatók
- Milyen belső merevlemezt vegyek?
- OLED TV topic
- Milyen billentyűzetet vegyek?
- HiFi műszaki szemmel - sztereó hangrendszerek
- A Sony szerint a PlayStation 5 konzolokat még nem érinti a memóriahiány
- Milyen egeret válasszak?
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- TCL LCD és LED TV-k
Ú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
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Melyik tápegységet vegyem?
- Gitáros topic
- Vezetékes FEJhallgatók
- Gyúrósok ide!
- Apple iPhone 14 Pro Max - sziget fesztivál
- Megvan, melyik Snapdragon 7 kerül Nothing Phone (4a)-ba
- OnePlus 15 - van plusz energia
- A fociról könnyedén, egy baráti társaságban
- Milyen belső merevlemezt vegyek?
- További aktív témák...
- Samsung Galaxy Tab S10 Ultra 5G 12/256GB 14,6" // ÚJSZERŰ // 100%-os AKKU
- Razer Blade 14 Mercury 3070Ti-Ryzen 9-6900HX-14"-1440p-165Hz-QHD-16GB
- Gamer PC-Számítógép! Csere-Beszámítás! Intel Ultra 7 265KF / RTX 5070 / 32GB DDR5 / 1TB Nvme SSD
- Apple iPhone 13 /128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 100% Után gyártott Kijelző
- Eladó Nintendo Wii
- iPhone SE 2020 64GB White-1 ÉV GARANCIA - Kártyafüggetlen, MS4481, 100% Akksi
- Keresünk iPhone 12/ 12 Mini/ 12 Pro/12 Pro Max
- AZONNAL KÉSZLETRŐL! Intel Core i5 14600K 32GB 6000MHz RAM 2TB Gen4 SSD RTX 5060 8GB FSP 750W
- HP Victus Gaming Laptop RTX 4070 / i7-13700H 16GB DDR5 1TB SSD Garancia
- iPhone 15 Plus 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4271
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


