Foxtable(狐表)用户栏目专家坐堂 → Panl 控件中BUTTON控件的自动增加


  共有3775人关注过本帖树形打印复制链接

主题:Panl 控件中BUTTON控件的自动增加

帅哥哟,离线,有人找我吗?
blsu33
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2927 积分:20161 威望:0 精华:0 注册:2012/2/3 17:45:00
Panl 控件中BUTTON控件的自动增加  发帖心情 Post By:2015/3/26 16:57:00 [只看该作者]

老师,
     是个老问题,举例我这边有100个窗口(但是已经通过代码限定了最多能打开10个)附件中的例子希望老师给改改:

    1、关于Panl 控件中是每一BUTTON对应一个窗口,如果panl 中加入100个Button有点痛苦,能否有别的方法。
    2、点击导航的不同页面 “任务”和“联系人”,Panl 控件中BUTTON 会被不同页面对应的 BUTTON覆盖




[此贴子已经被作者于2015/3/26 18:09:32编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/26 17:13:00 [只看该作者]

1、你可以用动态添加控件的方式,完panel里面添加button,参考 http://www.foxtable.com/help/topics/1409.htm

 

2、覆盖的问题,是因为你把按钮添加在一个panel里面了,你应该弄两个panel,然后分别添加属于自己的按钮啊

 


 回到顶部
帅哥哟,离线,有人找我吗?
blsu33
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2927 积分:20161 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/3/26 17:21:00 [只看该作者]

有点甜老师,
    第一个,这个真不会,普通用户的还没学会,动态增加 有点难 ,估计我一个星期也弄不出来,最后还得问您;能不能图片点击可在新窗口打开查看给个代码。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/26 17:44:00 [只看该作者]

呃,不是很简单么?在afterload事件,代码这样写

 

pidx.Clear
pkey.clear
vars("pclose") = False
For i As Integer = 1 To 3
    Dim btn As WinForm.Button
    btn = e.Form.CreateControl("btn_pg" & i, ControlTypeEnum.Button)
    e.Form.controls("panel1").AddControl(btn)
    btn.Visible = False
    btn.backColor = Color.white
    btn.Dock = 3
Next


 回到顶部
帅哥哟,离线,有人找我吗?
blsu33
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2927 积分:20161 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/3/26 18:08:00 [只看该作者]

太谢谢您了
可是还有第二个问题
2、覆盖的问题,是因为你把按钮添加在一个panel里面了,你应该弄两个panel,然后分别添加属于自己的按钮啊

可是Panl 不会自动变动长度,会出现这样



图片点击可在新窗口打开查看此主题相关图片如下:panl.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/26 19:11:00 [只看该作者]

 不明白你的意图。 呃,这两个本来就是不相关的。要显示哪一个,你就控制哪个panel显示出来。

 回到顶部
帅哥哟,离线,有人找我吗?
blsu33
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2927 积分:20161 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/3/27 11:24:00 [只看该作者]

有点甜老师,
用两个PANL 好像很难,我使用了把页面前两位添加数字编号,其他的都可以了实现了,就差以下代码,烦您帮忙看看:

If e.Sender.Name.StartsWith("btn_pg") Then
    For Each k As String In pidx.keys  '显示所有值
        Dim btn As WinForm.Button = e.Form.Controls(pidx(k))
        If pidx(k) = e.Sender.Name
            For Each TabControl In e.Form.Controls  ‘想要达到点击btn_pg 链接到对应界面
                Dim tab As WinForm.TabControl
                tab.SelectedIndex = k
                btn.BackColor = Color.red
            Else
                btn.BackColor = Color.white
            Next
        End If
    Next
End If

图片点击可在新窗口打开查看此主题相关图片如下:编码错误.png
图片点击可在新窗口打开查看


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/27 11:34:00 [只看该作者]

 你要做多少个,对应的东西就要弄多少个,比如

 

 pidx 就要弄两个,分别存储内容


 回到顶部
帅哥哟,离线,有人找我吗?
blsu33
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2927 积分:20161 威望:0 精华:0 注册:2012/2/3 17:45:00
  发帖心情 Post By:2015/3/27 11:52:00 [只看该作者]

要做10个 下面代码我复制了10个 可是增加的Button 不好用,麻烦您帮忙改改
If e.Sender.Name.StartsWith("btn_pg") Then
    For Each k As String In pidx.keys  '显示所有值
        Dim btn As WinForm.Button = e.Form.Controls(pidx(k))
        If pidx(k) = e.Sender.Name
            Dim tab As WinForm.TabControl = e.Form.Controls("TabControl1")
            tab.SelectedIndex = k
            btn.BackColor = Color.red
        Else
            btn.BackColor = Color.white
        End If
    Next
End If


If e.Sender.Name.StartsWith("btn_pg") Then
    For Each k As String In pidx.keys  '显示所有值
        Dim btn As WinForm.Button = e.Form.Controls(pidx(k))
        If pidx(k) = e.Sender.Name
            Dim tab As WinForm.TabControl = e.Form.Controls("TabControl2")
            tab.SelectedIndex = k
            btn.BackColor = Color.red
        Else
            btn.BackColor = Color.white
        End If
    Next
End If
[此贴子已经被作者于2015/3/27 11:53:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2015/3/27 11:54:00 [只看该作者]

 不理解你为什么要这样做,你设计界面的时候,肯定要添加 TabControl,然后往里面设计内容的啊。

 

 你现在到底想实现什么?


 回到顶部
总数 20 1 2 下一页