【问题标题】:Change radio button background image C#更改单选按钮背景图像 C#
【发布时间】:2020-11-13 03:21:36
【问题描述】:

我想编辑和更改单选按钮的背景图片。 我希望它在程序运行时持续发生,但我找不到正确的代码来做到这一点。 当然,我不能通过简单的方式通过属性来做到这一点,因为我需要它实时发生。 我正在使用 VisualStudio winforms。 谢谢!

void RandomRB(string[] answers, string[] images)
    {
        int[] randarray = new int[3];
        for (int i = 0; i < 3; i++)
        {
            // To make sure there are no crossing indexes
            randarray[i] = -1;
        }
        Random rnd = new Random();
        int random;
        for (int i = 0; i < 3; i++)
        {
            random = rnd.Next(0, 3);
            // To make sure that the random index hasn't been used before
            if (randarray.Contains(random))
                i--;
            else
                randarray[i] = random;
        }
        rb1.Text = answers[randarray[0]];
        // I want to insert a picture from string[] images
        rb1.BackgroundImage = ???
        rb2.Text = answers[randarray[1]];
        rb1.BackgroundImage = ???
        rb3.Text = answers[randarray[2]];
        rb1.BackgroundImage = ???
    }

【问题讨论】:

  • 您的目标是什么:Winforms、WPF、ASP..?您应该始终正确标记您的问题,以便人们可以在问题页面上看到它 - 您想要动画吗? Winforms:使用计时器。
  • 感谢您的指正。我希望单选按钮的背景图像根据问题进行更改。假设这是一个问答游戏,玩家必须点击正确的单选按钮
  • 我肯定不能通过属性做到这一点是什么意思?当然,您可以在运行时设置属性。 BackgroundImage 属性有什么问题?
  • 我需要命令来完成它。我的意思是通过属性窗口来做。我是编码新手,所以我很难解释。我想知道是否有类似这样的代码:radiobutton.BackgroundImage = ("something")
  • 是的,这正是你要写的。如果遇到问题,请尝试返回..

标签: c# visual-studio winforms radio-button


【解决方案1】:

根据您的描述,您希望单选按钮的背景图像和文本动态变化。 你可以试试下面的代码来解决你的问题。

private void Form1_Load(object sender, EventArgs e)
        {
            timer1.Enabled = true;
            timer1.Interval = 1000;       
            radioButton1.BackgroundImageLayout =ImageLayout.Stretch;
        }
        string[] path = Directory.GetFiles(@"F:\Picture");
        string[] answers = {"AA","BB",  "CC", "DD", "EE","FF"};
        Random r1 = new Random();
        Random r2 = new Random();       
        private void timer1_Tick(object sender, EventArgs e)
        {
         
            radioButton1.BackgroundImage = Image.FromFile(path[r1.Next(0,path.Length)]);
            radioButton1.Text =answers[r2.Next(0, answers.Length)];
        }

结果:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 1970-01-01
    • 2013-09-07
    • 2016-07-12
    • 2011-12-14
    • 2017-03-07
    • 2013-04-25
    相关资源
    最近更新 更多