iced(r10)
해당 리비전 수정 시각: ()
[주의!] 문서의 이전 버전(에 수정)을 보고 있습니다. 최신 버전으로 이동
1. 개요 [편집]
러스트의 GUI 프레임워크이다.
2. 사용법 [편집]
iced는 기본적으로 위의 구조를 갖고 있다. 먼저 UI에서 사용자가 상호작용하면 update 로직에 보낼 Message 열거를 만들어보자
enum Message {
Hello,
Bye
}그리고 데이터를 담을 state 구조체를 만들자
#[derive(Default)]
struct State {
say:String
}say의 기본값을 "hello"로 지정해주고 싶으면 derive 메크로를 제거하고
impl Default for State {
fn default() Self {
Self {
say:String::from("hello");
}
}
}를 추가해주자.[1]그리고 상호작용을 할 때 실행될 update 함수를 만들자
fn update(state:&mut State, message:Message) {
match Message {
Hello => {
state.say = String::from("Hello");
},
Bye => {
state.say = String::from("Bye");
}
}
}마지막으로 UI를 담당할 view 함수를 만들고
use iced::Element;
use iced::widget::{button, column, text};
fn view(state: &State) -> Element<'_, Message> {
column![
text(state.say),
button("say hello").on_press(Message::Hello),
button("say bye").on_press(Message::Bye)
].into()
}iced::run으로 실행하자
fn main () -> iced::Result {
iced::run(update, view)?
}3. 특징 [편집]
4. 사용하는 소프트웨어 [편집]
- cosmic
라이선스를 별도로 명시하지 않은 문서는 CC BY-SA 4.0에 따라 이용할 수 있습니다.
자세한 내용은 다올위키 라이선스 정책을 확인하시기 바랍니다.
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.
오픈 소스가 아닌 다올위키의 고유한 디자인을 무단으로 도용하는 것과, 운영 문서를 포함한 모든 문서를 라이선스를 지키지 않고 무단으로 가져가는 행동은 저작권 위반이며 법적 책임을 물 수 있습니다.

