CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

认为是高手的都来阿,小弟是在是无能为力了。

楼主Cappuccino(加奶的咖啡)2004-05-03 09:54:18 在 Delphi / VCL组件开发及应用 提问

最近受老板迫害,必须把一个系统写成图像热点的方式。  
  具体是这样要求的:  
      使用image显示图片,然后根据用户给定的数字,动态在image上面生成多少个按钮,然后要求,按钮能在image上面托动要所需要的位置,然后还要把这个位置能保存下来,以便以后能调用显示,请问怎么做阿。  
      不知道有没有类似的控件!  
   
  大哥门帮帮忙啊! 问题点数:0、回复次数:3Top

1 楼aiirii(ari-http://spaces.msn.com/members/aiirii/)回复于 2004-05-03 10:12:14 得分 0

組態的東西,   沒什麼的!  
  我找找Top

2 楼aiirii(ari-http://spaces.msn.com/members/aiirii/)回复于 2004-05-03 10:19:10 得分 0

http://expert.csdn.net/Expert/topic/2947/2947750.xml?temp=.1719324  
   
  unit   Resizer;  
   
  interface  
   
  uses  
      Windows,   Messages,   SysUtils,   Classes,   Graphics,   Controls,   Forms,   Dialogs,  
      ExtCtrls;  
   
  const  
        GRIDDEFAULT   =   4;  
   
  type  
        TResizer   =   class;  
        TMover   =   class;  
   
        TMovingEvent   =   procedure(Sender:   TResizer;   var   NewLeft,   NewTop:   integer)   of   object;  
        TSizingEvent   =   procedure(Sender:   TResizer;   var   NewLeft,   NewTop,   NewWidth,   NewHeight:   integer)   of   object;  
   
        TResizer   =   class(TComponent)  
        protected  
              FActive           :   boolean;  
              FControl         :   TControl;  
              Sizers             :   TList;  
              GroupMovers   :   TList;  
              FGroup             :   TWinControl;  
              FGridX             :   integer;  
              FGridY             :   integer;  
              FOnSized         :   TNotifyEvent;  
              FOnSizing       :   TSizingEvent;  
              FOnMoved         :   TNotifyEvent;  
              FOnMoving       :   TMovingEvent;  
              Sizing             :   boolean;  
              Moving             :   boolean;  
              OrigSize         :   TRect;  
              NewSize           :   TRect;  
              DownX               :   integer;  
              DownY               :   integer;  
              FAllowSize     :   boolean;  
              FAllowMove     :   boolean;  
              FKeepIn           :   boolean;  
              FHotTrack       :   boolean;  
              OneMover         :   TMover;  
              CurMover         :   TMover;  
              procedure       Notification(AComponent:   TComponent;   Operation:   TOperation);   override;  
              procedure       SetActive(b:   boolean);  
              procedure       SetControl(c:   TControl);  
              procedure       SetGroup(p:   TWinControl);  
              procedure       CreateSizers;  
              procedure       CheckSizers;  
              procedure       ShowSizers;  
              procedure       HideSizers;  
              procedure       SizerDown(Sender:   TObject;   Button:   TMouseButton;   Shift:   TShiftState;   X,   Y:   Integer);  
              procedure       SizerUp(Sender:   TObject;   Button:   TMouseButton;   Shift:   TShiftState;   X,   Y:   Integer);  
              procedure       SizerMove(Sender:   TObject;   Shift:   TShiftState;   X,   Y:   Integer);  
              procedure       MoverDown(Sender:   TObject;   Button:   TMouseButton;   Shift:   TShiftState;   X,   Y:   Integer);  
              procedure       MoverUp(Sender:   TObject;   Button:   TMouseButton;   Shift:   TShiftState;   X,   Y:   Integer);  
              procedure       MoverMove(Sender:   TObject;   Shift:   TShiftState;   X,   Y:   Integer);  
              procedure       DrawSizeRect(Rect:   TRect);  
              procedure       Calc_Size_Rect(SizerNum,   dx,   dy:   integer);  
              procedure       DoSizingEvent;  
              procedure       Calc_Move_Rect(dx,   dy:   integer);  
              procedure       DoMovingEvent;  
              procedure       Constrain_Size;  
              procedure       Constrain_Move;  
              procedure       MoverKeyDown(Sender:   TObject;   var   Key:   Word;   Shift:   TShiftState);  
              procedure       DoSizeMove(var   Key:   Word;   Shift:   TShiftState;   dx,   dy:   integer);  
              procedure       CreateGroupMovers;  
              procedure       CreateOneMover(m:   TMover;   c:   TControl);  
              function         FindMoverByBuddy(c:   TControl):   TMover;  
        public  
              constructor   Create(AOwner:   TComponent);   override;  
              destructor     Destroy;   override;  
        published  
              property         Active:   boolean   read   FActive   write   SetActive   default   True;  
              property         ResizeControl:   TControl   read   FControl   write   SetControl;  
              property         ResizeGroup:   TWinControl   read   FGroup   write   SetGroup;  
              property         GridX:   integer   read   FGridX   write   FGridX   default   GRIDDEFAULT;  
              property         GridY:   integer   read   FGridY   write   FGridY   default   GRIDDEFAULT;  
              property         OnSized:   TNotifyEvent   read   FOnSized   write   FOnSized;  
              property         OnSizing:   TSizingEvent   read   FOnSizing   write   FOnSizing;  
              property         OnMoved:   TNotifyEvent   read   FOnMoved   write   FOnMoved;  
              property         OnMoving:   TMovingEvent   read   FOnMoving   write   FOnMoving;  
              property         AllowSize:   boolean   read   FAllowSize   write   FAllowSize   default   True;  
              property         AllowMove:   boolean   read   FAllowMove   write   FAllowMove   default   True;  
              property         KeepInParent:   boolean   read   FKeepIn   write   FKeepIn   default   True;  
              property         HotTrack:   boolean   read   FHotTrack   write   FHotTrack;  
        end;  
   
        TInvisWin   =   class(TPanel)           //   This   could   also   derive   from   TPanel  
        protected  
              procedure   WndProc(var   Message:   TMessage);   override;  
              procedure   CreateParams(var   Params:   TCreateParams);   override;  
              procedure   WMDLGCode(var   Message:   TMessage);   message   WM_GETDLGCODE;  
        public  
              property     OnKeyDown;  
        end;  
   
        TMover   =   class(TInvisWin)  
        public  
              Buddy           :   TControl;  
              procedure   Show;  
        end;Top

3 楼constantine(飘遥的安吉儿)回复于 2004-05-03 11:00:38 得分 0

upTop

相关问题

  • 这是ADO的错,还是我们无能为力...
  • 请帮我搞定吧,我是无能为力了
  • 高分求救!我实在是无能为力了
  • 字符串变量里的全角半角都是一个字符,len()无能为力,chr()和asc()反向操作不尽人意!全是编码惹的祸。
  • 无能为力了。
  • 巨蛊惑问题,Delphi恐怕已经无能为力!
  • 我实在无能为力了,大侠们,救命!!!!!!
  • 自己无能为力了,请高手点拨!
  • 救命啊!!电脑中毒了,Norton 2004却无能为力???
  • 为什么创建session会出错,实在无能为力,向大家求助!

关键词

  • fonmoving
  • fonsizing
  • tmover
  • procedure
  • tshiftstate
  • tresizer
  • tcontrol
  • fgridx
  • fallowsize
  • fallowmove

得分解答快速导航

  • 帖主:Cappuccino

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo