如何用鼠标一次选择多个按钮?

yeyuzy 2011-09-01 10:04:52
我在form上放置了3排BitBtn按钮,每排5个,当程序编译运行后我想要用鼠标一次选中多个BitBtn按钮,程序在设计中是可以的,当程序编译运行后应该如何操作?谢谢了!!!
...全文
567 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
lynmison2012 2012-02-20
  • 打赏
  • 举报
回复
ListView属性设置如下:
ViewStyle = vsIcon
MultiSelect = true
即可实现鼠标框选多项目。

以下小代码可以用于显示已选的项目
procedure TFmTest.Button1Click(Sender: TObject);
var
i: integer;
begin
for i:= 0 to lvTest.Items.Count-1 do
begin
if lvTest.Items[i].Selected then ShowMessage(lvTest.Items[i].Caption);
end;
end;
yeyuzy 2012-02-20
  • 打赏
  • 举报
回复
还有其他的方法吗?
梦尊 2011-09-05
  • 打赏
  • 举报
回复
窗体事件

OnMouseDown 时记录鼠标起始坐标 X,Y
OnMouseMove 时获取当前鼠标坐标 X1, Y1, 然后画矩形 (X,Y) - (X1, Y1)
OnMouseUp 时记录鼠标最终坐标 X2,Y2

计算哪些按钮位于 (X,Y) - (X2,Y2) 这个区间之内,符合条件的视为选中。
矩形可以用Shape控件来实现。
haitao 2011-09-03
  • 打赏
  • 举报
回复
每个按钮下放一个checkbox

想拖拉选择,则需要额外处理了——其实它只能选择相邻的
fslqh 2011-09-03
  • 打赏
  • 举报
回复
好像不行的,或自己写一个按钮。
reverzeng 2011-09-03
  • 打赏
  • 举报
回复
listview有一個multiselect屬性,設為true,就可以實現你的多選的效果
yeyuzy 2011-09-02
  • 打赏
  • 举报
回复
用ListView来实现呢?
你能说具体点吗,谢了!!!
OO_is_just_P 2011-09-02
  • 打赏
  • 举报
回复
当然ListView了
yeyuzy 2011-09-01
  • 打赏
  • 举报
回复
我在form上放置了3排BitBtn按钮,每排5个,当程序编译运行后我想要用鼠标一次选中多个BitBtn按钮,就像用鼠标拖动选择文件一样,谢谢了!!!


taoran12 2011-09-01
  • 打赏
  • 举报
回复
你的意思是一次相当于同时点击按钮多个按钮吗?调用按钮的onclick事件就可以了
iDeputy 2011-09-01
  • 打赏
  • 举报
回复
没看明白...
yeyuzy 2011-09-01
  • 打赏
  • 举报
回复
用ListView来实现呢?
你能说具体点吗,谢了!!!
fengchuixuelai 2011-09-01
  • 打赏
  • 举报
回复
用ListView来实现呢?
yeyuzy 2011-09-01
  • 打赏
  • 举报
回复
我的目的是每一个按钮对应一个座位,使用鼠标可以同时选中多个按钮即多个座位。
如果是在设计阶段,我用鼠标从左上角往右下角一拖,在这个范围内的按钮控件都能被选中,现在我的要求是当程序编译运行以后要有“使用鼠标可以同时选中多个按钮”的功能,我的程序应该如何做。谢谢了。!!!
vokeyliu 2011-09-01
  • 打赏
  • 举报
回复
你的目的是什么呢?在运行时使用鼠标拖动改变按钮的位置吗?

5,928

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧