QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 13009|回复: 18
打印 上一主题 下一主题

我的bcb怎么在函数外声明的变量,在函数内无法存储

[复制链接]
字体大小: 正常 放大

22

主题

2

听众

72

积分

升级  70.53%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-4-29 10:23 |只看该作者 |倒序浏览
|招呼Ta 关注Ta
<>我的bcb6怎么在函数外声明的变量,在函数内无法存储。也就是在一个函数中存后,无法在另一个函数中提取。若提取,则和没存一样等于零。</P>) @- ?. O+ K" j0 t
<>是我的BCB的设置问题吗?</P>6 @2 S+ n4 c$ d  n4 f
<>如下中的ox,oy</P>
8 {( P$ D. ~; _7 y<>int ox,oy;& D6 m: Y4 j4 x( f; G! y" j
int x,y;
( [( k( A* C/ `% x" P//---------------------------------------------------------------------------
; i$ D" r7 ~, B1 n" }  nvoid __fastcall TForm1::Image1MouseDown(TObject *Sender,
' T! |8 p2 }& y0 |. N/ p      TMouseButton Button, TShiftState Shift, int X, int Y)5 O, R( }# s8 Z
{ox=Image1-&gt;Left;( f5 Q/ n  G+ m( K5 z- K% o" Z
oy=Image1-&gt;Top;
  o; j9 `5 p3 |; v5 |x=X;* C" S( s! e6 k, A5 e$ s* }
y=Y;# `- k  p5 C' J3 X1 z* G5 F
}. W, a) d0 d/ O3 G, Z* z
void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,
/ z4 K" V8 e. F. G! f" H      int X, int Y)
) }" T4 P5 {1 |4 u9 d{" k- D7 |3 W2 ?7 A; @8 J
Image1-&gt;Left+=X-x;
4 v/ A. x4 X; g" X  ?: TImage1-&gt;Top+=Y-y;, }' _% j6 t' {
}
9 o7 B7 V8 ^. D0 a. v$ U//---------------------------------------------------------------------------- u$ J* c+ ^% m! {% C1 Q
void __fastcall TForm1::Image1MouseUp(TObject *Sender, TMouseButton Button,
2 \/ i& {( H0 ^7 a- N      TShiftState Shift, int X, int Y)% B9 e: z( v9 N" {- U, Y9 E% ~
{/ s4 J2 g) `& [* c; V2 e, h
if(Image1-&gt;Left&gt;Shape1-&gt;Left-20 &amp;&amp;' K! Z6 s8 {0 v1 b+ `, r
Image1-&gt;Left&lt;Shape1-&gt;Left+Shape1-&gt;Width+
" b0 x0 @3 y/ k) h20&amp;&amp;Image1-&gt;Top&gt;Shape1-&gt;Top-20&amp;&amp;
: v0 {6 ?( r7 ^ Image1-&gt;Top&lt;Shape1-&gt;Top+20+Shape1-&gt;Top){6 m; Q! h" i- @. o8 s
Image1-&gt;Top=Shape1-&gt;Top;- p  i% P9 l4 a
Shape1-&gt;Visible=false;
% l! [4 z7 L  E! wImage1-&gt;Left=Shape1-&gt;Left;
- a# |1 f4 o/ v; [: Y$ P}else{0 N7 _6 \& I5 `2 N
Image1-&gt;Left=ox;
7 d; w6 ?- z$ d+ c$ dImage1-&gt;Top=oy;4 c; f% \# s7 ~0 @. ~2 G
}
% C4 `2 L& h: [) U5 V  I}</P>/ g  T1 C3 f) V8 f2 K" m
<>最后ox、oy竟然都等于0。在mousedown中怎么没存上呢?</P>
zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
ilikenba 实名认证       

1万

主题

49

听众

2万

积分

  • TA的每日心情
    奋斗
    2024-6-23 05:14
  • 签到天数: 1043 天

    [LV.10]以坛为家III

    社区QQ达人 新人进步奖 优秀斑竹奖 发帖功臣

    群组万里江山

    群组sas讨论小组

    群组长盛证券理财有限公司

    群组C 语言讨论组

    群组Matlab讨论组

    <>道理上应该是全局变量,不会存不上的!是不是本身Image1-&gt;Left和Image1-&gt;Top的值就是0</P>
    回复

    使用道具 举报

    22

    主题

    2

    听众

    72

    积分

    升级  70.53%

    该用户从未签到

    新人进步奖

    <>谢谢<b><FONT color=#000066>ilikenba的回答</FONT></b>,</P><>不过Image1-&gt;Left和Image1-&gt;Top的值不是0,是不是我的BCB设置的问题?</P>[em06]
    回复

    使用道具 举报

    ilikenba 实名认证       

    1万

    主题

    49

    听众

    2万

    积分

  • TA的每日心情
    奋斗
    2024-6-23 05:14
  • 签到天数: 1043 天

    [LV.10]以坛为家III

    社区QQ达人 新人进步奖 优秀斑竹奖 发帖功臣

    群组万里江山

    群组sas讨论小组

    群组长盛证券理财有限公司

    群组C 语言讨论组

    群组Matlab讨论组

    我这里测试没有问题,应该是你的设置的问题!我这里都是默认的设置没有问题!
    回复

    使用道具 举报

    22

    主题

    2

    听众

    72

    积分

    升级  70.53%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    ilikenba 实名认证       

    1万

    主题

    49

    听众

    2万

    积分

  • TA的每日心情
    奋斗
    2024-6-23 05:14
  • 签到天数: 1043 天

    [LV.10]以坛为家III

    社区QQ达人 新人进步奖 优秀斑竹奖 发帖功臣

    群组万里江山

    群组sas讨论小组

    群组长盛证券理财有限公司

    群组C 语言讨论组

    群组Matlab讨论组

    回复

    使用道具 举报

    22

    主题

    2

    听众

    72

    积分

    升级  70.53%

    该用户从未签到

    新人进步奖

    <>我恢复默认了,但还不行,我的全文是这样的,麻烦大侠再看一下:[em04][em04]</P><>int ox,oy;4 Z: x2 e) T8 O5 G$ s/ q; {2 K
    int x,y;
    1 N6 A' X" ]% Y* z1 \) H! P) N/ E! Ovoid __fastcall TForm1::Image1MouseDown(TObject *Sender,
    ; Z3 x0 d5 m7 q5 M; A, N; |      TMouseButton Button, TShiftState Shift, int X, int Y)
    ) m9 _$ ^+ ?, C! A{* w/ [0 g6 l9 w( Y: m7 @5 ~# G
    if(Button=mbLeft){1 l2 o* E* W9 f$ r3 ^$ _" J! Z
    ox=Image1-&gt;Left;
    * Q* J8 K$ u: H' @+ p# B& ]oy=Image1-&gt;Top;6 ~' t, A3 i1 C4 f* I
    x=X;# P+ o; h; z; k7 p
    y=Y;
    ' l& F/ ~+ f: }& ]}% Q, J, p0 n) C; h: K* L
    }) P( |! G5 g9 d* O/ m
    //---------------------------------------------------------------------------
    * w- O# @$ i, Nvoid __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,6 W& i. E8 j9 m
          int X, int Y)9 P( v# e" W% H* n, W6 I) g
    {
      k- t! Y- N) V' aif(Shift.Contains(ssLeft)){
    8 |2 M; V) {/ n. W, H% ~/ iImage1-&gt;Left+=X-x;  b9 b0 J3 c4 v, F+ @, W( v4 r( r3 p
    Image1-&gt;Top+=Y-y;
    * l9 P' F5 q3 E$ G, k}3 G$ @; a" q, B
    }; I4 a! f0 Z# `# C
    //---------------------------------------------------------------------------5 C- @! q1 l" f8 ~7 Q
    void __fastcall TForm1::Image1MouseUp(TObject *Sender, TMouseButton Button,
    ' J2 [; Z+ d6 f2 @  Y      TShiftState Shift, int X, int Y)8 _4 z7 \: P5 ~8 m* n) N  j4 i
    {! x# g7 e! n9 _  A5 [/ @" I' Z0 s5 v
    if(Image1-&gt;Left&gt;Shape1-&gt;Left-20 &amp;&amp;
    ( u0 s% c: d0 lImage1-&gt;Left&lt;Shape1-&gt;Left+Shape1-&gt;Width+
    ) K0 P% V. c' p3 @# f4 t+ U20&amp;&amp;Image1-&gt;Top&gt;Shape1-&gt;Top-20&amp;&amp;
    4 H- P: r4 a' l) l  x Image1-&gt;Top&lt;Shape1-&gt;Top+20+Shape1-&gt;Top){
    ! _- X8 t* A: L1 i3 JImage1-&gt;Top=Shape1-&gt;Top;
    9 M" \3 V% {7 H1 UShape1-&gt;Visible=false;
    3 `5 s% G7 o1 O$ v& R; dImage1-&gt;Left=Shape1-&gt;Left;+ ^4 y7 U( M+ ?6 s
    }else{- z4 u- T; d9 l/ W& h
    Image1-&gt;Left=ox;. ?6 q! {0 A) T. v% p
    Image1-&gt;Top=oy;
    / B& R& ?8 W; O$ S7 n}
    4 n4 w& V3 H$ q9 `* v; X}</P>
    回复

    使用道具 举报

    22

    主题

    2

    听众

    72

    积分

    升级  70.53%

    该用户从未签到

    新人进步奖

    <>而且我要是定义 extern int ox,oy;</P><>[Linker Error] Unresolved external '_ox' referenced from D:\PROGRAM FILES\BORLAND\CBUILDER6\BIN\UNIT1.OBJ</P><>会有这样的错误信息</P>
    回复

    使用道具 举报

    ilikenba 实名认证       

    1万

    主题

    49

    听众

    2万

    积分

  • TA的每日心情
    奋斗
    2024-6-23 05:14
  • 签到天数: 1043 天

    [LV.10]以坛为家III

    社区QQ达人 新人进步奖 优秀斑竹奖 发帖功臣

    群组万里江山

    群组sas讨论小组

    群组长盛证券理财有限公司

    群组C 语言讨论组

    群组Matlab讨论组

    <DIV class=quote><B>以下是引用<I>小菜菜同学</I>在2005-4-29 12:27:12的发言:</B>1 b- v. C" x5 }1 R; I6 Q& Z
    2 B9 Z; ~& U4 `. F4 w4 P: m! S
    <>而且我要是定义 extern int ox,oy;</P>. }. i7 D8 H. g% T* \
    <>[Linker Error] Unresolved external '_ox' referenced from D:\PROGRAM FILES\BORLAND\CBUILDER6\BIN\UNIT1.OBJ</P>
    ' X2 k) T; }( v8 D  l<>会有这样的错误信息</P></DIV>" f/ P+ ?! f% a7 R: E) P
    <>当然了,这是声明ox是外部变量,而不是定义!</P>
    回复

    使用道具 举报

    22

    主题

    2

    听众

    72

    积分

    升级  70.53%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-19 20:42 , Processed in 0.505586 second(s), 98 queries .

    回顶部