rust gui fltk

FLTK 图形用户界面库的 Rust 绑定。

fltk crate 是一个跨平台的轻量级 GUI 库,可以静态链接以生成小型、独立且快速的 GUI 应用程序。

doc

https://www.rust-lang.org/zh-CN/learn/get-started

https://docs.rs/fltk/latest/fltk/

install

复制代码
$ curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
$ sudo apt install cmake git
$ cargo install fltk-fluid
$ cargo install fl2rust

app

复制代码
$ mkdir rust-app
$ cd rust-app
$ cargo new app

vi Cargo.toml

复制代码
[dependencies]
fltk = "^1.4"

[patch.crates-io]
fltk = { git = "https://ghproxy.net/https://github.com/fltk-rs/fltk-rs" }

vi src/main.rs

复制代码
use fltk::{app, button::Button, frame::Frame, prelude::*, window::Window};

fn main() {
    let app = app::App::default();
    let mut wind = Window::new(100, 100, 400, 300, "Hello from rust");
    let mut frame = Frame::new(0, 0, 400, 200, "");
    let mut but = Button::new(160, 210, 80, 40, "Click me!");
    wind.end();
    wind.show();
    but.set_callback(move |_| frame.set_label("Hello World!")); // the closure capture is mutable borrow to our button
    app.run().unwrap();
}

build

复制代码
$ cargo clean
$ cargo build
$ cargo run
相关推荐
小则又沐风a几秒前
STL库: string类
开发语言·c++
菜菜小狗的学习笔记1 分钟前
八股(二)Java集合
java·开发语言
星乐a2 分钟前
String 不可变性与常量池深度解析
java·开发语言
captain3763 分钟前
ACM模式下Java输入输出函数为什么会超时?及解决方法
java·开发语言
分布式存储与RustFS6 分钟前
MinIO迎来“恶龙”?RustFS这款开源存储简直“不讲武德”
架构·rust·开源·对象存储·minio·企业存储·rustfs
唐叔在学习11 分钟前
Python移动端应用消息提醒开发实践
开发语言·python
SimonKing12 分钟前
大V说’AI替代不了你’,但现实是——用AI的人正在替代你
java·后端·程序员
暴力求解12 分钟前
C++ ---string类(三)
开发语言·c++
IT_陈寒13 分钟前
SpringBoot里的这个坑差点让我加班到天亮
前端·人工智能·后端
Pocker_Spades_A18 分钟前
Python快速入门专业版(五十七)——POST请求与模拟登录:从表单分析到实战(以测试网站为例)
开发语言·python