簡體   English   中英

gtk#單擊按鈕添加小部件

[英]gtk# adding widgets on button click

我剛開始使用gtk#,但遇到了一個簡單問題。 當我開始一個新項目時,我使用MainWindow的Designer創建帶有hbox / vbox的基本UI,並創建了“添加行”按鈕和由表頭組成的1行表。

我的問題是,單擊按鈕時,我無法弄清楚如何向表中動態添加行。

旁注:我在Designer中的表標記為“ table4”,但我不知道如何訪問它。 我認為一旦獲得有關如何正確訪問它的幫助,就應該有了一個AddRow函數,可以在其中指定高度,邊距等?

謝謝您的幫助。

Program.cs中:

using System;
using Gtk;

namespace PMA
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            Application.Init ();

            //create main window
            MainWindow win = new MainWindow ();

            Application.Run ();
        }
    }
}

MainWindow.cs:

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;
    }

    private void AddButtonPressHandler (object obj, EventArgs args)
        {
            Console.WriteLine("This works, but can't figure out how to dynamically add a row to MainWindow's table");
        }
}

我不知道這是否可以解決您的問題,但我認為您可以簡單地增加NRows屬性。 將其代替MainWindow.cs中的AddButtonPressHandler方法:

private void AddButtonPressHandler (object obj, EventArgs args)
{
       table4.NRows ++;
}

我希望它能正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM