首页 > 电脑专区 > windows >

软件界面编写:动态地创建按钮 和 IList 的使用

来源:互联网 2023-02-20 17:41:22 323

软件界面编写:动态生成按钮过程中IList的使用YsX办公区 - 实用经验教程分享!

动态生成按钮过程中IList的使用

  • 1

    想实现下面这样一个效果,动态生成一个按钮,并且调用这个按钮。YsX办公区 - 实用经验教程分享!

  • 1本页面未经许可获取自百度经验
  • 2

    具体而言,实现效果为:① 按下左上角的按钮simpleButton1,便动态地在右上角出现一个memoEdit1;② 在memoEdit1中输入任意内容;③ 按下左下角的按钮simpleButton2,memoEdit1中的内容自动地被复制到memoEdit2中。界面如下:YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 3

    程序源码如下:YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 4

    存在的问题:编译器提示memoEdit2.Text = memoEdit1.Text有问题,memoEdit1不存在。YsX办公区 - 实用经验教程分享!

  • 5

    问题产生的原因:memoEdit1是动态实现的,而且是private void simpleButton1_Click()的内部变量,在private void simpleButton2_Click()中是不可见的。YsX办公区 - 实用经验教程分享!

  • 6

    需要解决的问题:如何将动态生成的按钮写入类的成员变量,而非成为方法的内部变量?YsX办公区 - 实用经验教程分享!

  • 7

    为了将动态生成的按钮写入类的成员变量,这里引入IList,代码如下(其中黄色部分为新增的):YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 8

    特别注意使用IList需要添加using System.Collections;YsX办公区 - 实用经验教程分享!

  • 9

    原理:先在方法外部声明IList,之后private void simpleButton1_Click()中将动态生成的按钮存入IList,最后在private void simpleButton2_Click()中从IList中将动态生成的按钮取出来。YsX办公区 - 实用经验教程分享!

  • 软件界面编写:如何动态地创建按钮

  • 1

    作为抛砖引玉的案例,我记录实现以下功能的方法:在一个表格上有一个按钮,按下这个按钮之后,自动生成另一个同样的按钮。YsX办公区 - 实用经验教程分享!

  • 2

    首先,学习一下,通过IDE创建一个按钮,IDE都自动添加了哪些代码。下图中红色标记的部分为自动添加的。YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 3

    疑问:我想实现的是“有一个按钮,按下这个按钮之后,自动生成另一个同样的按钮”。这需要把上面红色标记的代码写到第一个按钮的Click事件中,可是上述红色标记部分的最后一句话,显示IDE为类添加了成员变量,在Click事件中如何添加成员变量呢?YsX办公区 - 实用经验教程分享!

  • 4

    解答:新按钮不设置为类的成员变量即可。YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 5

    实际使用时候,需要这样写:YsX办公区 - 实用经验教程分享!

    (1)将上述代码中最后一行去掉。YsX办公区 - 实用经验教程分享!

    (2)将上述代码中所有的this指针去掉。(因为新按钮不设置为类的成员变量,而this指针是指向类的)YsX办公区 - 实用经验教程分享!

    (3)将所有的simpleButton1改为simpleButton2。YsX办公区 - 实用经验教程分享!

    (4)上述操作之后,第一行变为simpleButton1 = new DevExpress.XtraEditors.SimpleButton();,在这第一行前面,加上DevExpress.XtraEditors.SimpleButtonYsX办公区 - 实用经验教程分享!

    (5)更改新按钮的生成位置,即第二行代码里的坐标。YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 6

    最初的情形YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 7

    动态生成第二个按钮YsX办公区 - 实用经验教程分享!

    软件界面编写:动态地创建按钮 和 IList 的使用YsX办公区 - 实用经验教程分享!

  • 以上方法由办公区教程网编辑摘抄自百度经验可供大家参考!YsX办公区 - 实用经验教程分享!


    标签: 操作系统界面编写动态创建

    办公区 Copyright © 2016-2023 www.bgqu.net. Some Rights Reserved. 备案号:湘ICP备2020019561号统计代码