R2du-soft
دوشنبه 12 خرداد 1393, 14:15 عصر
با سلام چون خیلی خودم به این توی بیشتر برنامه ها نیاز داشتم گفتم که روش ایکار رو براتون بزارم تا شاید جایی بدردتون بخوره:
ما 2 تا تکست باکس داریم و میخوایم فقط textbox1 حروف رو بگیره و فقط در Textbox2 عدد گرفته بشه:
برای اینکار در رویداد keypress باید دستورات رو بنویسیتم که زمانی که کلید از روی کیبرد خورد و چیزی بجز اون چیزی که ما تعریف کرده بودیم بود! اون داخل تکست باکس ما ثبت نشه!
فقط حروف:
این کد کارش اینکه که اگه در تکست باکس ما هر چیزی بجز حروف a-z یا A-Z ثبت شد اون رو قبول نکنه + ما تعیین کردیم که کلیدDelete و Back Space و Space هم قبول کنه!
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii < 97 Or KeyAscii > 122) And (KeyAscii < 65 Or KeyAscii > 90) And (KeyAscii <> 8 And KeyAscii <> 127 And KeyAscii <> 32) Then
KeyAscii = 0
End If
End Sub
توضیح:
در انتهای همین صفحه جدول کدهای دیکه ها رو براتون قرار دادم که بفهمید کد مثلا عدد 63 علامت سوال یا همون ؟ رو نشون میده
در کد استفاده شده در بالا (فقط حروف):
KeyAscii < 97 Or KeyAscii > 122 یعنی از حروف a-z کوچیک رو قبول کنه
KeyAscii < 65 Or KeyAscii > 90 یعنی از حروف A-Z بزرگ رو قبول کنه
KeyAscii <> 8 یعنی دکمه Back Space برای پاک کردن یک اشتیاه تایپی
KeyAscii <> 127 یعنی دکمه Delete برای پاک کردن یک اشتیاه تایپی
KeyAscii <> 32 یعنی دکمه Space برای ایجاد فاصله
فقط عدد:
در این کد فقط و فقط ما یعیین کردیم که تکست باکس ما عدد 0 تا 9 رو بگیره نه چیز دیگه! + باز کلید های Delete و Back Space
Private Sub Text2_KeyPress(KeyAscii As Integer)
If (KeyAscii > 57 Or KeyAscii < 48) And KeyAscii <> 8 And KeyAscii <> 127 Then
KeyAscii = 0
End If
End Sub
توضیح:
در انتهای همین صفحه جدول کدهای دیکه ها رو براتون قرار دادم که بفهمید کد مثلا عدد 63 علامت سوال یا همون ؟ رو نشون میده
در کد استفاده شده در بالا (فقط عدد):
KeyAscii > 57 Or KeyAscii < 48 یعنی از حروف 0 تا 9 رو قبول کنه
KeyAscii <> 8 یعنی دکمه Back Space برای پاک کردن یک اشتیاه تایپی
KeyAscii <> 127 یعنی دکمه Delete برای پاک کردن یک اشتیاه تایپی
Code
Char
Code
Char
Code
Char
Code
Char
0
<NUL>
32
<space>
64
@
96
`
1
<SOH>
33
!
65
A
97
a
2
<STX>
34
"
66
B
98
b
3
<ETX>
35
#
67
C
99
c
4
<EOT>
36
$
68
D
100
d
5
<ENQ>
37
%
69
E
101
e
6
<ACK>
38
&
70
F
102
f
7
<BEL>
39
'
71
G
103
g
8
<BS>
40
(
72
H
104
h
9
<HT>
41
)
73
I
105
i
10
<LF>
42
*
74
J
106
j
11
<VT>
43
+
75
K
107
k
12
<FF>
44
,
76
L
108
l
13
<CR>
45
-
77
M
109
m
14
<SO>
46
.
78
N
110
n
15
<SI>
47
/
79
O
111
o
16
<DLE>
48
0
80
P
112
p
17
<DC1>
49
1
81
Q
113
q
18
<DC2>
50
2
82
R
114
r
19
<DC3>
51
3
83
S
115
s
20
<DC4>
52
4
84
T
116
t
21
<NAK>
53
5
85
U
117
u
22
<SYN>
54
6
86
V
118
v
23
<ETB>
55
7
87
W
119
w
24
<CAN>
56
8
88
X
120
x
25
<EM>
57
9
89
Y
121
y
26
<>
58
:
90
Z
122
z
27
<SUB>
59
;
91
[
123
{
28
<ESC>
60
<
92
\
124
|
29
<GS>
61
=
93
]
125
}
30
<RS>
62
>
94
^
126
~
31
<US>
63
?
95
_
127
<DEL>
ما 2 تا تکست باکس داریم و میخوایم فقط textbox1 حروف رو بگیره و فقط در Textbox2 عدد گرفته بشه:
برای اینکار در رویداد keypress باید دستورات رو بنویسیتم که زمانی که کلید از روی کیبرد خورد و چیزی بجز اون چیزی که ما تعریف کرده بودیم بود! اون داخل تکست باکس ما ثبت نشه!
فقط حروف:
این کد کارش اینکه که اگه در تکست باکس ما هر چیزی بجز حروف a-z یا A-Z ثبت شد اون رو قبول نکنه + ما تعیین کردیم که کلیدDelete و Back Space و Space هم قبول کنه!
Private Sub Text1_KeyPress(KeyAscii As Integer)
If (KeyAscii < 97 Or KeyAscii > 122) And (KeyAscii < 65 Or KeyAscii > 90) And (KeyAscii <> 8 And KeyAscii <> 127 And KeyAscii <> 32) Then
KeyAscii = 0
End If
End Sub
توضیح:
در انتهای همین صفحه جدول کدهای دیکه ها رو براتون قرار دادم که بفهمید کد مثلا عدد 63 علامت سوال یا همون ؟ رو نشون میده
در کد استفاده شده در بالا (فقط حروف):
KeyAscii < 97 Or KeyAscii > 122 یعنی از حروف a-z کوچیک رو قبول کنه
KeyAscii < 65 Or KeyAscii > 90 یعنی از حروف A-Z بزرگ رو قبول کنه
KeyAscii <> 8 یعنی دکمه Back Space برای پاک کردن یک اشتیاه تایپی
KeyAscii <> 127 یعنی دکمه Delete برای پاک کردن یک اشتیاه تایپی
KeyAscii <> 32 یعنی دکمه Space برای ایجاد فاصله
فقط عدد:
در این کد فقط و فقط ما یعیین کردیم که تکست باکس ما عدد 0 تا 9 رو بگیره نه چیز دیگه! + باز کلید های Delete و Back Space
Private Sub Text2_KeyPress(KeyAscii As Integer)
If (KeyAscii > 57 Or KeyAscii < 48) And KeyAscii <> 8 And KeyAscii <> 127 Then
KeyAscii = 0
End If
End Sub
توضیح:
در انتهای همین صفحه جدول کدهای دیکه ها رو براتون قرار دادم که بفهمید کد مثلا عدد 63 علامت سوال یا همون ؟ رو نشون میده
در کد استفاده شده در بالا (فقط عدد):
KeyAscii > 57 Or KeyAscii < 48 یعنی از حروف 0 تا 9 رو قبول کنه
KeyAscii <> 8 یعنی دکمه Back Space برای پاک کردن یک اشتیاه تایپی
KeyAscii <> 127 یعنی دکمه Delete برای پاک کردن یک اشتیاه تایپی
Code
Char
Code
Char
Code
Char
Code
Char
0
<NUL>
32
<space>
64
@
96
`
1
<SOH>
33
!
65
A
97
a
2
<STX>
34
"
66
B
98
b
3
<ETX>
35
#
67
C
99
c
4
<EOT>
36
$
68
D
100
d
5
<ENQ>
37
%
69
E
101
e
6
<ACK>
38
&
70
F
102
f
7
<BEL>
39
'
71
G
103
g
8
<BS>
40
(
72
H
104
h
9
<HT>
41
)
73
I
105
i
10
<LF>
42
*
74
J
106
j
11
<VT>
43
+
75
K
107
k
12
<FF>
44
,
76
L
108
l
13
<CR>
45
-
77
M
109
m
14
<SO>
46
.
78
N
110
n
15
<SI>
47
/
79
O
111
o
16
<DLE>
48
0
80
P
112
p
17
<DC1>
49
1
81
Q
113
q
18
<DC2>
50
2
82
R
114
r
19
<DC3>
51
3
83
S
115
s
20
<DC4>
52
4
84
T
116
t
21
<NAK>
53
5
85
U
117
u
22
<SYN>
54
6
86
V
118
v
23
<ETB>
55
7
87
W
119
w
24
<CAN>
56
8
88
X
120
x
25
<EM>
57
9
89
Y
121
y
26
<>
58
:
90
Z
122
z
27
<SUB>
59
;
91
[
123
{
28
<ESC>
60
<
92
\
124
|
29
<GS>
61
=
93
]
125
}
30
<RS>
62
>
94
^
126
~
31
<US>
63
?
95
_
127
<DEL>