25.07.2024 18:40 Gtk3
Приклад використання віджету Frame - рамка з надписом навколо групи віджетів

dotnet new consoledotnet add package GtkSharpdotnet runusing Gtk;
class Program
{
public static void Main()
{
Application.Init();
new FirstWindow();
Application.Run();
}
public static void Quit()
{
Application.Quit();
}
}using Gtk;
class FirstWindow : Window
{
public FirstWindow() : base("Test")
{
SetDefaultSize(600, 350);
SetPosition(WindowPosition.Center);
DeleteEvent += delegate { Program.Quit(); };
VBox vBox = new VBox();
Add(vBox);
HBox hBox = new HBox();
vBox.PackStart(hBox, false, false, 5);
Frame frame = new Frame
{
LabelXalign = 0.5f,
Label = "Блок редагування полів"
};
hBox.PackStart(frame, false, false, 10);
VBox vBoxFrame = new VBox() { BorderWidth = 10 };
frame.Add(vBoxFrame);
for (int i = 1; i < 6; i++)
{
HBox hBoxFrame = new HBox();
vBoxFrame.PackStart(hBoxFrame, false, false, 5);
hBoxFrame.PackStart(new Label($"Поле {i}:"), false, false, 5);
hBoxFrame.PackStart(new Entry() { PlaceholderText = $"Поле {i}" }, false, false, 5);
hBoxFrame.PackStart(new Label($"Додаткова інформація та опис для <b>поля {i}</b>") { UseMarkup = true }, false, false, 5);
}
HBox hBoxFrameButton = new HBox();
vBoxFrame.PackStart(hBoxFrameButton, false, false, 5);
hBoxFrameButton.PackStart(new Button("Зберегти"), false, false, 5);
hBoxFrameButton.PackEnd(new Button("Закрити"), false, false, 5);
ShowAll();
}
}© accounting.org.ua - 2025