又来送分了,帮帮忙,一个按钮的事件搞了一天。。。。

maya8maya85 2016-03-05 06:10:53
我很惭愧,真的。用的是winform,来自http://www.csharpwin.com/csharpresource/2588.shtml一个小载图工具,人家上面说明什么都有,现在老师说要把下面的工具放在右键上,我本来想这也太简单,而且已经有几个在上面了,谁不知道,高估了自己,右键是加上去了,功能只能实现到显示选色板这里,不知道如何触发绘制的那个函数,因为,我找不到,,,哪个高人帮帮忙改一下,实现一个功能就行。
如果说要代码,我不知道是那段代码,贴不上来。里面有十几个类,我只能提供下载的地址,帮帮我,我现在只有5O分,全给你了

下载:http://pan.baidu.com/s/1boopYfP
...全文
266 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lccleo 2016-03-14
  • 打赏
  • 举报
回复
引用 7 楼 maya8maya85 的回复:
[quote=引用 6 楼 lccleo 的回复:] 这个研究起来还挺有挑战性的 首选不知道这个是帖主的作业还是什么 这个demo里面其实已经把功能封装成dll文件了 但是dll的代码确实在此工程里面已经放出了,但是对源码的改写并不会影响到程序 ,除非编译成dll文件 再倒入 不过你说的位置我找到了 后面想改基于很简单了:

 else if (e.Button == MouseButtons.Right)
            {
                if (SelectedImage)
                {
                    if (SelectImageRect.Contains(e.Location))
                    {
                        contextMenuStrip.Show(this, e.Location);
                        
                    }
                    else
                    {
                        ResetSelectImage();
                    }
                }

一眼就看出来了吧 判断是否是右击 判断是否选择了图形 然后show出你的菜单 菜单里面的各个按钮的时间都在构造函数里面init函数里面自定义好了 有问题继续问 求分
你是高手,可惜我没懂,现实不了,能改一个给我看看不?另外可否加个Q,方便以后大家交流,如有需要,我会尽量酬谢。我的Q578111217[/quote] 不是高手 略懂而已 加你q 不用啥酬谢 看代码也是种学习 解决了就把分给我就行 你得告诉我要实现什么
maya8maya85 2016-03-14
  • 打赏
  • 举报
回复
引用 6 楼 lccleo 的回复:
这个研究起来还挺有挑战性的 首选不知道这个是帖主的作业还是什么 这个demo里面其实已经把功能封装成dll文件了 但是dll的代码确实在此工程里面已经放出了,但是对源码的改写并不会影响到程序 ,除非编译成dll文件 再倒入 不过你说的位置我找到了 后面想改基于很简单了:

 else if (e.Button == MouseButtons.Right)
            {
                if (SelectedImage)
                {
                    if (SelectImageRect.Contains(e.Location))
                    {
                        contextMenuStrip.Show(this, e.Location);
                        
                    }
                    else
                    {
                        ResetSelectImage();
                    }
                }

一眼就看出来了吧 判断是否是右击 判断是否选择了图形 然后show出你的菜单 菜单里面的各个按钮的时间都在构造函数里面init函数里面自定义好了 有问题继续问 求分
你是高手,可惜我没懂,现实不了,能改一个给我看看不?另外可否加个Q,方便以后大家交流,如有需要,我会尽量酬谢。我的Q578111217
lccleo 2016-03-14
  • 打赏
  • 举报
回复
这个研究起来还挺有挑战性的 首选不知道这个是帖主的作业还是什么 这个demo里面其实已经把功能封装成dll文件了 但是dll的代码确实在此工程里面已经放出了,但是对源码的改写并不会影响到程序 ,除非编译成dll文件 再倒入 不过你说的位置我找到了 后面想改基于很简单了:

 else if (e.Button == MouseButtons.Right)
            {
                if (SelectedImage)
                {
                    if (SelectImageRect.Contains(e.Location))
                    {
                        contextMenuStrip.Show(this, e.Location);
                        
                    }
                    else
                    {
                        ResetSelectImage();
                    }
                }

一眼就看出来了吧 判断是否是右击 判断是否选择了图形 然后show出你的菜单 菜单里面的各个按钮的时间都在构造函数里面init函数里面自定义好了 有问题继续问 求分
maya8maya85 2016-03-06
  • 打赏
  • 举报
回复
引用 2 楼 rcsglydm 的回复:
两个办法: 1、用引用法,直接把右键的触发事件,转到选色板的按钮的触发事件上。相当于点击了选色板,自然可以执行了。 2、用对比法。查看其他已实现的右键事件,如“撤销编辑”的事件,对比选色板中对应按钮“撤销编辑”的事件,就可以搞清楚,右键功能到底是怎么实现的。
用引用法估计是不行的,因为还有椭圆啊,箭头啊,能不能帮个忙啊?大神
maya8maya85 2016-03-06
  • 打赏
  • 举报
回复
引用 1 楼 lovelj2012 的回复:
右键弹出的框框,应该是一个上下文菜单控件,你每个项进行单击,在单击事件把原来下边工具条里面事件对应的代码拷贝过来就行呗
我就是找不到那段代码
maya8maya85 2016-03-06
  • 打赏
  • 举报
回复
引用 2 楼 rcsglydm 的回复:
两个办法: 1、用引用法,直接把右键的触发事件,转到选色板的按钮的触发事件上。相当于点击了选色板,自然可以执行了。 2、用对比法。查看其他已实现的右键事件,如“撤销编辑”的事件,对比选色板中对应按钮“撤销编辑”的事件,就可以搞清楚,右键功能到底是怎么实现的。
这道理我肯定知道,但我都找了一天都没找到。
rcsglydm 2016-03-06
  • 打赏
  • 举报
回复
两个办法: 1、用引用法,直接把右键的触发事件,转到选色板的按钮的触发事件上。相当于点击了选色板,自然可以执行了。 2、用对比法。查看其他已实现的右键事件,如“撤销编辑”的事件,对比选色板中对应按钮“撤销编辑”的事件,就可以搞清楚,右键功能到底是怎么实现的。
江南小鱼 2016-03-06
  • 打赏
  • 举报
回复
右键弹出的框框,应该是一个上下文菜单控件,你每个项进行单击,在单击事件把原来下边工具条里面事件对应的代码拷贝过来就行呗

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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