#widgets #bindings #ui #graphics

fltk-anchor

为 fltk-rs 提供的锚定机制

6 个版本

0.2.0 2023 年 3 月 31 日
0.1.4 2021 年 9 月 5 日

#147 in #widgets

33 每月下载量
fltk-builder 中使用

MIT 许可证

7KB
88

fltk-anchor

为 fltk-rs 小部件提供的锚定机制,当调整父窗口大小时,可覆盖 FLTK 的默认调整大小设置。

用法

[dependencies]
fltk = 1.1
fltk-anchor = "0.1"

示例

use fltk::{prelude::*, *};
use fltk_anchor::{Anchor, Anchored};

const PADDING: i32 = 8;

fn main() {
    let a = app::App::default();
    let mut win = window::Window::default().with_size(400, 300);

    button::Button::new(PADDING, PADDING, 80, 40, "Click").with_anchor(Anchor::Left | Anchor::Top);

    input::MultilineInput::new(
        PADDING,
        PADDING * 2 + 40,
        400 - PADDING * 2,
        300 - 40 - PADDING * 3,
        "",
    )
    .with_anchor(Anchor::Left | Anchor::Right | Anchor::Top | Anchor::Bottom);

    win.end();

    win.make_resizable(true);
    win.show();

    a.run().unwrap();
}

这表示当调整大小时,按钮具有固定的大小和位置,而输入框填充窗口的剩余部分。


lib.rs:

fltk-anchor

为 fltk-rs 小部件提供的锚定机制,当调整父窗口大小时,可覆盖 FLTK 的默认调整大小设置。

用法

[dependencies]
fltk = 1.1
fltk-anchor = "0.1"

示例

use fltk::{prelude::*, *};
use fltk_anchor::{Anchor, Anchored};

const PADDING: i32 = 8;

fn main() {
let a = app::App::default();
let mut win = window::Window::default().with_size(400, 300);

button::Button::new(PADDING, PADDING, 80, 40, "Click").with_anchor(Anchor::Left | Anchor::Top);

input::MultilineInput::new(
PADDING,
PADDING * 2 + 40,
400 - PADDING * 2,
300 - 40 - PADDING * 3,
"",
)
.with_anchor(Anchor::Left | Anchor::Right | Anchor::Top | Anchor::Bottom);

win.end();

win.make_resizable(true);
win.show();

a.run().unwrap();
}

这表示当调整大小时,按钮具有固定的大小和位置,而输入框填充窗口的剩余部分。

依赖项

~14MB
~305K SLoC