using Gtk; using System; class SharpApp : Window { public SharpApp() : base("Калькулятор") { SetDefaultSize(250, 230); // Розмір вікна як усталено SetPosition(WindowPosition.Center); // Розташування вікна у центрі екрану DeleteEvent += delegate {Application.Quit();}; VBox vbox = new VBox(false, 3); // Створення вертикального контейнера на 3 місця Table table = new Table(5, 4, true); // Створення таблиці з 5 рядків і 4 стовпчиків // Розташування кнопок у таблиці: // вказано номери рядків і стовпчиків // від (включно) і до (не включно), // Створення кнопок з написами // нумерацію почато з нуля Button ba = new Button("√¯"); table.Attach(ba, 0, 1, 0, 1); Button bp = new Button("^"); table.Attach(bp, 1, 2, 0, 1); Button bb = new Button("←"); table.Attach(bb, 2, 3, 0, 1); Button bc = new Button("C"); table.Attach(bc, 3, 4, 0, 1); Button b7 = new Button("7"); table.Attach(b7, 0, 1, 1, 2); Button b8 = new Button("8"); table.Attach(b8, 1, 2, 1, 2); Button b9 = new Button("9"); table.Attach(b9, 2, 3, 1, 2); Button bd = new Button("/"); table.Attach(bd, 3, 4, 1, 2); Button b4 = new Button("4"); table.Attach(b4, 0, 1, 2, 3); Button b5 = new Button("5"); table.Attach(b5, 1, 2, 2, 3); Button b6 = new Button("6"); table.Attach(b6, 2, 3, 2, 3); Button be = new Button("*"); table.Attach(be, 3, 4, 2, 3); Button b1 = new Button("1"); table.Attach(b1, 0, 1, 3, 4); Button b2 = new Button("2"); table.Attach(b2, 1, 2, 3, 4); Button b3 = new Button("3"); table.Attach(b3, 2, 3, 3, 4); Button bf = new Button("-"); table.Attach(bf, 3, 4, 3, 4); Button b0 = new Button("0"); table.Attach(b0, 0, 1, 4, 5); Button bg = new Button("."); table.Attach(bg, 1, 2, 4, 5); Button bh = new Button("="); table.Attach(bh, 2, 3, 4, 5); Button bi = new Button("+"); table.Attach(bi, 3, 4, 4, 5); Label l = new Label("Напис"); // Створення напису Entry e = new Entry("Поле введення");// Створення поля введення bc.Clicked += delegate // Обробник події натискання кнопки з написом "С" { l.Text="Очищено поле введення"; e.Text=""; }; // Розташування у контейнері vbox: vbox.PackEnd (table, true, true, 0); // таблиці vbox.PackStart(l, false, false, 0); // напису vbox.PackStart(e, false, false, 0); // поля введення Add(vbox); // Додавання контейнера vbox у вікно ShowAll(); // Показ всього долученого у вікно } public static void Main() { Application.Init(); new SharpApp(); Application.Run(); } }