在delphi窗口上实现多选(200)

  • 主题发起人 主题发起人 feng7504
  • 开始时间 开始时间
F

feng7504

Unregistered / Unconfirmed
GUEST, unregistred user!
如何在窗口上实现windows桌面那样,按住左键,移动鼠标出现虚线,选择多个图标,还有右键菜单的效果。请教各位高手,工作需要在一个地图上,用鼠标可以选择多个设备可以一起控制
 
离线资料中有,搜一下。是关于Image的操作,和你的要求差不多。大概是2004年的帖子
 
TDrawingTool = (dtLine, dtRectangle, dtEllipse, dtRoundRect);var Drawing: Boolean; Origin, MovePt: TPoint; DrawingTool: TDrawingTool;procedure TMain_frm.LandMapMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begin Drawing := True; LandMap.Canvas.Pen.Width := 1; LandMap.Canvas.Pen.Style := psDot; LandMap.Canvas.MoveTo(X, Y); Origin := Point(x, y); MovePt := Origin;end;procedure TMain_frm.LandMapMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);begin StatusBar1.Panels[1].Text := Format('Current: (%d, %d)', [X, Y]); if Drawing then begin DrawShape(Origin, MovePt, pmNotXor); MovePt := Point(X, Y); DrawShape(Origin, MovePt, pmNotXor); end;end;procedure TMain_frm.LandMapMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);beginif Drawing then begin SButton_Down; TreeLoadImage; //取消地图选择时的虚线 Drawing := False; end;end;
 
LZ自己搞定了吗?恭喜,接分。
 
后退
顶部