当前位置: 首页 > ops >正文

rust语言 (1.88) egui (0.32.1) 学习笔记(逐行注释)(十四)垂直滚动条

垂直滚动条ScrollArea

fn main() -> eframe::Result<()> {// 配置原生窗口参数let options = eframe::NativeOptions::default();// 生成0-99的字符串列表let keys: Vec<String> = (0..100).map(|i| i.to_string()).collect();eframe::run_simple_native("菜单", options, move |ctx, _frame| {egui::CentralPanel::default().show(ctx, |ui| {load_fonts(&ctx);// 添加垂直滚动条egui::ScrollArea::vertical().show(ui, |ui| {for idx in &keys {ui.label(idx);}});});})
}

只绘制可见部分

fn main() -> eframe::Result<()> {// 配置原生窗口参数let options = eframe::NativeOptions::default();let keys: Vec<String> = (0..100).map(|i| i.to_string()).collect();eframe::run_simple_native("菜单", options, move |ctx, _frame| {egui::CentralPanel::default().show(ctx, |ui| {load_fonts(&ctx);// 参数二:每行高度,参数三:行数egui::ScrollArea::vertical().show_rows(ui, 17., keys.len(), |ui, rng| {for idx in rng {ui.label(&keys[idx]);}});});})
}

滚动条靠右显示

  • ui.set_width(f32):设置当前ui的宽度

  • ui.available_width():当前容器的剩余宽度

fn main() -> eframe::Result<()> {// 配置原生窗口参数let options = eframe::NativeOptions::default();let keys: Vec<String> = (0..100).map(|i| i.to_string()).collect();eframe::run_simple_native("菜单", options, move |ctx, _frame| {egui::CentralPanel::default().show(ctx, |ui| {load_fonts(&ctx);// 参数二:每行高度,参数三:行数egui::ScrollArea::vertical().show_rows(ui, 17., keys.len(), |ui, rng| {ui.set_width(ui.available_width()); // 设置当前ui元素的宽度为当前容器的剩余宽度for idx in rng {ui.label(&keys[idx]);}});});})
}
http://www.xdnf.cn/news/18569.html

相关文章:

  • HarmonyOS实战(DevEco AI篇)—深度体验DevEco CodeGenie智能编程助手
  • 算法训练营day60 图论⑩ Bellman_ford 队列优化算法、判断负权回路、单源有限最短路(修改后版本)
  • `strcat` 字符串连接函数
  • 蔬菜溯源系统的开发与设计小程序
  • 新疆地州市1米分辨率土地覆盖图
  • Placement new是什么
  • 这也许就是DeepSeek V3.1性能提升的关键:UE8M0与INT8量化技术对比与优势分析
  • Python Excel
  • 何为‘口业’,怎么看待它
  • C++哈希表:unordered_map与unordered_set全解析
  • 搜索算法在实际场景中的应用
  • 基于ResNet50的血细胞图像分类模型训练全记录
  • 【Kubernetes知识点】Pod调度和ConfigMaps
  • 结构主义神话学的范式突破与后现代转向:从二元对立到数字神话素的符号学革命
  • 【深入理解 Linux 网络】收包原理与内核实现(下)应用层读取与 epoll 实现
  • 20250823解决荣品RD-RK3588-MID开发板在充电的时候大概每10s屏幕会像水波纹闪烁一下
  • douyin_search_tool:用python开发的抖音关键词搜索采集软件
  • 使用tensorRT10部署yolov5实例分割模型(2)
  • k8s总结
  • HTTP的状态码有哪些,并用例子说明一下
  • DS18B20温度传感器详解
  • 注意力机制:捕获长距离依赖关系的革命性技术
  • chapter06_应用上下文与门面模式
  • 每日算法题【链表】:链表的中间节点、返回倒数第k个节点、合并两个有序链表
  • MySQL优化器追踪(Optimizer Trace)详解
  • APIs基础one
  • docker的数据管理
  • Java试题-选择题(16)
  • 论文阅读:arxiv 2025 Can You Trick the Grader? Adversarial Persuasion of LLM Judges
  • selenium采集数据怎么应对反爬机制?