2014-02-13 56 views
0

我需要一些整天困扰我的类的输入。我想要实现的是将按钮旁边的按钮列出,并在当时显示最多8个按钮。因此,如果有8个以上的按钮,我将使用导航按钮滚动浏览可能的按钮。C#中的Buttonmanagement和自动生成的按钮点击事件

我遇到的问题是,因为这些都是在循环中生成的 - 点击事件并不像我想要的那样。

这是我对本作的类: Buttonmanagement class

这个问题可能是很容易的,但我一直盯着这个太长了!当我第一次触发drawGroupButtons()方法时,我发现它最容易在中间显示按钮时看到问题。我可以毫无问题地走向一个方向,但只要我改变方向,问题就开始出现。

在我的例子(在另一个未连接类),我用128点的按钮,并开始从43产生他们57.如果我留在“菜单”我得到: 29,43 - > 15, 29 - > 0,15

上面的值是p_Start和p_End的内容。这正是我想要的。如果您注意到每一步中的按钮数量不同,那是因为导航按钮(第一组0,15只有一个右键)。但是当我开始正确的时候,使用了初始值(在这种情况下是43,57)。所以我会从0,15跳跃到57,71这是非常错误的:(这就像点击事件不知道其他人的变化。有谁知道我在这里做错了吗?

回答

0

问题终于解决了!!!

错误在于导航按钮位于彼此的顶部,所以解决方案实际上工作,但错误的按钮被点击。如果有人想要使用这个,我做的唯一的改变是移动bPrev和bnext编辑变量的声明drawGroupButtons()的顶部,然后下bnext编辑范围添加Constrols.Remove(bnext编辑)下bPrev范围,Controls.Remove(bPrev)!

+0

@Ondrej所需要的所有代码是附属的,所以是的,它s“本地”但仍相关 – Thomas

+0

我们不包含pastebin上的代码。要么在这里张贴相关部分,要么根本没有。先阅读SO的规则! –

+0

啊,当然可以。我可以简单地在这里发布代码:) – Thomas