gtk hello3 button
This commit is contained in:
9
gtk4/hello3/Cargo.toml
Normal file
9
gtk4/hello3/Cargo.toml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[package]
|
||||||
|
name = "hello2"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
gtk = { version = "0.6.6", package = "gtk4", features = ["v4_8"] }
|
||||||
36
gtk4/hello3/src/main.rs
Normal file
36
gtk4/hello3/src/main.rs
Normal file
@@ -0,0 +1,36 @@
|
|||||||
|
use gtk::prelude::*;
|
||||||
|
use gtk::{glib, Application, ApplicationWindow, Button};
|
||||||
|
|
||||||
|
const APP_ID: &str = "com.clonbg.Helloword2";
|
||||||
|
|
||||||
|
fn build_ui(app: &Application) {
|
||||||
|
// Create a button with label and margins
|
||||||
|
let button = Button::builder()
|
||||||
|
.label("Press me!")
|
||||||
|
.margin_top(12)
|
||||||
|
.margin_bottom(12)
|
||||||
|
.margin_start(12)
|
||||||
|
.margin_end(12)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
// Connect to "clicked" signal of `button`
|
||||||
|
button.connect_clicked(|button| {
|
||||||
|
// Set the label to "Hello World!" after the button has been clicked on
|
||||||
|
button.set_label("Hello World!");
|
||||||
|
});
|
||||||
|
|
||||||
|
let window = ApplicationWindow::builder()
|
||||||
|
.application(app)
|
||||||
|
.title("Mi aplicacióng gtk")
|
||||||
|
.child(&button)
|
||||||
|
.build();
|
||||||
|
|
||||||
|
// presenta la ventana, será la última orden
|
||||||
|
window.present();
|
||||||
|
}
|
||||||
|
|
||||||
|
fn main() -> glib::ExitCode {
|
||||||
|
let app = Application::builder().application_id(APP_ID).build();
|
||||||
|
app.connect_activate(build_ui);
|
||||||
|
app.run()
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user