程序问答   发布时间:2022-06-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组??

开发过程中遇到如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组?的问题如何解决?下面主要结合日常开发的经验,给出你关于如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组?的解决方法建议,希望对你解决如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组?有所启发或帮助;

我正在尝试使用 windows 窗体制作排序程序。目标是允许用户通过从确定数组大小的 trackbar 中获取值来创建数组。例如,如果 trackbar 值设置为 100,那么用户将按下“创建数组”按钮,这将生成一个包含 100 个随机数字的整数数组,然后将它们显示在图表上。

然后,用户将按下另一个按钮来实际对数组进行排序。但是,因为数组是在实际创建数组的按钮范围内定义的,所以我不知道如何将其放入对其进行排序的按钮范围内。排序后,我想保持数组排序,因此需要在全局级别进行更改。

我试图在 Form1: Form 类中的类级别上定义变量,并让每个控件返回一个值,这将更新数组的值,但这不起作用,因为我的项目没有有一个 static voID Main() 函数,但我不知道如何以我目前对该程序的最少了解将其实现到 windows 窗体中。

代码示例如下:

public partial class Form1 : Form
    {


        public Form1()
        {
            InitializeComponent();
        }
        // Initializes size of the array.
        public int arraySize;

        // Generates the array and links it to the chart for visualization.
        private voID button2_Click(object sender,EventArgs E)
        {
            // the dataArray takes in the arraySize and returns an array
            // which is used to populate the chart.
            arraySize = trackbar1.Value;
            ArrayObject dataGenerator = new ArrayObject();
            int[] dataArray = dataGenerator.GenerateData(arraySizE);

            chart1.SerIEs["Data"].Points.Clear();
            int placement = 0;
            foreach (int dataPoint in dataArray)
            {
                this.chart1.SerIEs["Data"].Points.AddXY(placement,dataPoint);
                placement += 1;
            }
        }

        // updates the label to show the current value that trackbar1 has SELEcted.
        private voID trackbar1_Scroll(object sender,EventArgs E)
        {
            trackbarValueLabel.Text = trackbar1.Value.ToString();
        }

        private voID buttonSort_Click(object sender,EventArgs E)
        {

        }
    }

在最坏的情况下,我可以创建数组、绘制图表、排序,然后在需要时在同一个按钮控件中重新绘制所有内容,但我确实希望将它们分开,以便用户可以专注于创建他们喜欢的数据集,然后对其进行排序

解决方法

听起来您希望用户能够对创建的最后一个数组进行操作(排序)。最后一个数组代表表单持有的一块状态

要使表单有状态,请在表单级别添加成员变量。在这种情况下,您将添加一个数组并在创建数组时更新它。

public partial class Form1 : Form
{
    protected int[] _latestArray = new int[] {} ; 

    public Form1()
    {
        InitializeComponent();
    }

    // Initializes size of the array.
    public int arraySize = 0;

    // Generates the array and links it to the chart for visualization.
    private void button2_Click(object sender,EventArgs E)
    {
        // the dataArray takes in the arraySize and returns an array
        // which is used to populate the chart.
        arraySize = trackBar1.Value;
        ArrayObject dataGenerator = new ArrayObject();
        int[] dataArray = dataGenerator.GenerateData(arraySizE);

        chart1.Series["Data"].Points.Clear();
        int placement = 0;
        foreach (int dataPoint in dataArray)
        {
            this.chart1.Series["Data"].Points.AddXY(placement,dataPoint);
            placement += 1;
        }
        //Save state
        _latestArray = dataArray;
    }

    private void buttonSort_Click(object sender,EventArgs E)
    {
        Array.Sort(_latestArray);
    }
}

大佬总结

以上是大佬教程为你收集整理的如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组?全部内容,希望文章能够帮你解决如何使用 Windows 窗体中的按钮控件更改在类级别定义的整数数组?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。