按下 GUI 按钮后如何创建标签

本文关键字:创建 标签 何创建 GUI 按钮 按下 | 更新日期: 2023-09-27 18:33:37

我有一个GUI按钮,可以检测何时按下它,还有一段代码,我想在按下按钮时创建标签。我目前正在将条目转换为 int(这正在工作。通过在条目中显示 int 进行测试。并尝试使用 for 循环。我的代码在我的主窗口的源代码中。这是我的代码:

using System;
using Gtk;
public partial class MainWindow: Gtk.Window
{
public MainWindow () : base (Gtk.WindowType.Toplevel)
{
    Build ();
}
protected void OnDeleteEvent (object sender, DeleteEventArgs a)
{
    Application.Quit ();
    a.RetVal = true;
}
protected void generatePlates (object sender, EventArgs e)
{
    int n;
    short number;
    bool validNumnber;
    if (Int16.TryParse (entry1.Text, out number))
    {
        validNumnber = true;
    }
    else 
    {
        validNumnber = false;
    }
    if (validNumnber == true)
    {
        n = Int16.Parse(entry1.Text);
    }
    else
    {
        n = 0;
    }
    for (int i = 0; i < n; i++)
    {
        var lbl = new Label();
        lbl.Name = "lbl"+i;
        lbl.Text = "Plate "+i+":";
        lbl.Allocation = new Gdk.Rectangle (110*i+110,110*i+110,100,100);
        this.Add (lbl);
        entry3.Text = this.ToString();
    }
}

任何建议都值得赞赏,并随时询问更多详细信息。如果我的代码有其他缺陷,请告诉我,因为我是一个完全的新手。此外,entry3只是我用于测试此内容的条目。

编辑:此代码适用于Windows桌面应用程序。

按下 GUI 按钮后如何创建标签

通常,您需要将新控件添加到 Form/view/whatever 的控件集合中。 如果您在视图中运行它,而不是简单地使用。 View.Add (lbl);

如果您使用的是 c#.net winforms(我认为您不是),请使用 this.Controls.Add(lbl);