- 在线时间
- 1957 小时
- 最后登录
- 2024-6-29
- 注册时间
- 2004-4-26
- 听众数
- 49
- 收听数
- 0
- 能力
- 60 分
- 体力
- 40959 点
- 威望
- 6 点
- 阅读权限
- 255
- 积分
- 23862
- 相册
- 0
- 日志
- 0
- 记录
- 0
- 帖子
- 20501
- 主题
- 18182
- 精华
- 5
- 分享
- 0
- 好友
- 140
TA的每日心情 | 奋斗 2024-6-23 05:14 |
|---|
签到天数: 1043 天 [LV.10]以坛为家III
 群组: 万里江山 群组: sas讨论小组 群组: 长盛证券理财有限公司 群组: C 语言讨论组 群组: Matlab讨论组 |
< >void __fastcall TForm1::Edit1Change(TObject *Sender) ! r3 ?: b2 ^9 z* | m! k& ^
{ 8 Z4 u4 a' I' Z$ Z2 y5 x/ o
char *string; 8 P; _2 Z9 T5 ^
int i,j,k;
7 K6 m/ w" j: vchar ch;
6 R+ F$ N) [( ybool flag=false;
; i2 o# x! e3 z' _& s6 j% c$ q: H9 O3 t+ I5 [: q. B3 G
k=Edit1->Text.Length(); . L, U7 k" x( U1 `' A
string=new char[k+1];
% e% ?2 F" [- V) sstrcpy(string,Edit1->Text.c_str()); 1 {4 ?0 ^4 ?1 a0 u- v- _: D
for(i=0;i<k;i++) ; \7 S z' E; ~& G! m: g5 H
{
& ]/ H+ P" k6 T o" Tch=string;
& U) b% V$ t5 h( G& \; S4 L Hif(!(ch>='0' && ch<='9' || ch=='.')) - m$ x! X9 a4 k7 I4 g
{
$ b g4 \1 u/ C+ O& Xfor(j=i;j<k;j++)
( ^- Q5 |6 s% _, zstring[j]=string[j+1]; : k9 f$ K; z7 Y$ B
k--;
0 I. A, ]0 O' P8 ]( r# G0 `flag=true;
3 `9 b3 g0 l6 H$ D% _}
" s) B( A5 i. p# _5 C' f} $ Q# K; x& i$ p0 w
if(flag)
! V6 i3 b* [. i/ X& P* R' FEdit1->Text=AnsiString(string);
9 i8 O( j) } Sdelete[] string;
/ e$ H- b% m. i/ h5 P//GlobalText=Edit1->Text;
5 b& s9 M/ k d; R! N+ }2 b( u}
5 y2 \( R6 j# L( {//---------------------------------------------------------------------------
% I( f! a7 z: z0 c* }*************************************************************************************************</P>" P2 {- d6 |; |& V* @
< >void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key)
; V. D0 n6 E. F( q6 L, m{ ( `) ^0 @! f7 _) B
if(!(Key>='0' && Key<='9' || Key=='.' || Key=='\b')) ! Q: J) Y* B% H, X0 A/ V# |9 G
Key=0; ) \2 S6 r, k, D4 g* @
} 3 R- a4 a! z0 Q5 g. E
//--------------------------------------------------------------------------- </P>
" x6 ^: O+ a% |- h0 e) c< >*************************************************************************************************</P>, C) H- R4 j% R' Q" O/ q
< >void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key) - h: D4 W( i) N9 W
{ h% q- L! h) P. y7 m
switch(Key) 3 H+ `" }1 n* x8 r8 p
{
* h' Q, m7 k: Q' q7 x3 pcase '0': //接受数字键0~9的输入
' n( U% M8 p C0 R+ O2 o0 hcase '1':
# W7 P& y5 A& h: ^4 F( V+ Dcase '2': 9 ?. j2 `( z1 O+ s6 o" e! C
case '3': ' u" z: r( A- r& B# }
case '4':
9 w" R, B5 @+ N# M; t0 M( v0 @case '5':
0 ]8 Y3 R" @( Z8 Q; D% A; ycase '6':
* m2 L5 g7 a7 I2 f" B4 c& }+ vcase '7':
5 G h# @3 s. M+ G1 U( zcase '8': ( Q& S% d/ V( s6 v4 g+ _5 g/ `
case '9': a' G! P% P( I0 G
case 8: //这是一个BackSpace键,不能禁止,否则不能实现删除功能了 & d0 b/ H2 u% W& v. Y( E- W: q* ^' W
break; / F8 v, v) N, G X/ {8 l( Z
case '.': //检查是否已存在小数点
* }5 Z: j' w, x, z- [0 Wif(DotInStr(Edit1->Text))
, T# Q5 [$ I! ZKey=0;
[9 ~) L5 K% J& }8 Nbreak; ( O3 L1 y1 o6 D/ T6 @0 P7 X1 l1 g3 z5 y
case '+': //检查是否已存在符号 ) G) Z& n' [( B( F7 X* c
case '-': 9 r4 i: h1 Z$ W0 w
if(SignInStr(Edit1->Text)) + A0 Q @9 N* u, n P8 _# U
Key=0;
) _ f5 b; B) @# O2 ?( Jbreak; 3 z9 P& Q4 |) k
default: //对于其他输入键,置Key=0
r# Z' j/ F) X2 QKey=0; % M. e$ z- a9 U
break;
m8 O7 ~6 D9 [( `- V- ?}
6 X- b$ i4 J4 J. \, s} / q6 z4 P% I0 y f+ S \
//---------------------------------------------------------------------------
0 r) C2 ^$ v7 D( L3 y, @bool __fastcall TForm1: otInStr(AnsiString ass) 6 k I8 U2 l0 N. }6 i) F
{
. x) R9 j r7 @8 g" o4 Pint ii,ll; ( Y9 E8 W' z& G' X& m/ M
ll=ass.Length(); 9 x# t; D# Y/ E2 w6 i
for(ii=0;ii<ll;ii++)
% V8 Y1 k6 Q& z{ " ]2 v. y+ c+ a b
if(ass.c_str()[ii]=='.') ) w5 a5 {+ F5 }% d w
{
% S1 h0 {$ L$ ^" O& Areturn True;
0 ~( T4 _/ T% u7 G E j}
2 ~1 F# s* s! O* q' q' R/ r} . |: k0 M6 i6 O
return False; - t. i6 Z9 m9 t2 N, N/ p
}
( ~* ?3 r& ]! f$ _//该函数检查字符串前面是否已存在"+、-"符号 4 r% n' `: ^7 O: `! Q' A/ S6 W: P
bool __fastcall TForm1::SignInStr(AnsiString ass)
" O" X8 G0 q# U) Z+ x3 p. _6 \+ o{
3 [+ ]) s3 N1 K0 lint ii,ll;
% L/ g3 p, P) Y6 F3 b: Pll=ass.Length(); 6 |' x5 U& I/ F- a2 f8 J! D
for(ii=0;ii<ll;ii++) & \) k, S: `2 E
{
. a% Z1 J+ ~8 o: H; P4 nif((ass.c_str()[ii]=='+')||(ass.c_str()[ii]=='-')) . c" Y1 A t8 T; S2 J! b/ v6 V
{ . M5 n" N! i% w8 A: ?. U# T
return True; + Y0 X6 ^, {: z1 d5 n
} ) \7 S/ Z9 |% v
}
1 d4 R* `6 [% o- z i o2 ]# t1 yreturn False;
* Y4 D. M L o- ^7 t; ]}
+ x$ u, p; M9 H, \( y</P> |
zan
|