以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  将一个button的Image赋值给另一个Button  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=39817)

--  作者:东坡一剑
--  发布时间:2013/9/2 14:28:00
--  将一个button的Image赋值给另一个Button

Dim a,b As WinForm.Button
a = e.Sender
For Each b In Forms("录入货品信息").Controls
    If b.Focused  Then
        b.Image = a.Image
        e.Form.Close()
    End If
Next

 

希望通过上面一段代码将button的Image赋值给另一个Button,却出现了错误提示,请教诸位高手,该怎么呢弄?

下面是错误提示的截图

 


图片点击可在新窗口打开查看此主题相关图片如下:2013-09-02 14 42 54.png
图片点击可在新窗口打开查看

 

[此贴子已经被作者于2013-9-2 14:58:46编辑过]

--  作者:Bin
--  发布时间:2013/9/2 14:35:00
--  
出现什么错误?
--  作者:狐狸爸爸
--  发布时间:2013/9/2 14:49:00
--  

意思是你当前的活动控件,并非一个Button,而是一个PictureBox

 

 


--  作者:lsy
--  发布时间:2013/9/2 14:51:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:图标赋值.table


--  作者:东坡一剑
--  发布时间:2013/9/2 15:12:00
--  

看完发来的实例,在forms("洗涤图标")的全局事件click事件中设置如下代码,还是不能成功,错误提示照旧

Dim a,b As WinForm.Button
a = e.Sender
For Each b In Forms("录入货品信息").Controls
    If b.Focused  Then
        b.Image =GetImage(a.Tooltip)
        e.Form.Close()
    End If
Next

[此贴子已经被作者于2013-9-2 15:16:54编辑过]

--  作者:Bin
--  发布时间:2013/9/2 15:15:00
--  
你的错误问题是类型不对,并不是你现在所认为的这个问题. 而是狐爸所说的问题. 实在不会你就上例子吧.

你可以考虑直接

For Each b as WinForm.Control In Forms("录入货品信息").Controls
    If b.Focused  Then
        b.Image = e.Sender.Image
        e.Form.Close()
    End If
Next

--  作者:东坡一剑
--  发布时间:2013/9/2 15:33:00
--  

还是不行,只好上例子了,劳驾各位!

其实我的目标是:点击窗口"录入商品信息"的"boxgroup3“中的任意一个Button便选定它,同时打开窗口"洗涤标志",点击其中的某个图标(Button),则将其Image赋值给窗口"录入商品信息"中选定的Button。当所有赋值工作完成后,点击窗口"录入商品信息"中的"确定"按钮,再将这些Image批量赋值给窗口所属表的对应列。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:诺诗兰管理系统.foxdb

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:数据源.zip

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:洗涤标志.zip

补充一下,窗口“洗涤标志”中的button是动态生成的,是不是这个有影响?

[此贴子已经被作者于2013-9-2 15:47:06编辑过]

--  作者:lsy
--  发布时间:2013/9/2 15:40:00
--  
再上一个试用版的例子。
--  作者:Bin
--  发布时间:2013/9/2 15:53:00
--  
已经提醒你多次是类型问题了.你何苦还是要这么做呢.你固定为BUtton类型 你循环所有控件,遇到不是BUtton的不就报错了.


其实你这个需求有更加简单高效的做法


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:诺诗兰管理系统 (1).foxdb



--  作者:东坡一剑
--  发布时间:2013/9/2 16:03:00
--  

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:实例.zip

 

试用版传上来了,劳驾各位了!

[此贴子已经被作者于2013-9-2 16:17:51编辑过]