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

天津众业建设工程有限公司网站php手机网站模板

天津众业建设工程有限公司网站,php手机网站模板,ag1042入口快速入口,网站活动怎么做的在开发桌面软件的时候我们经常需要配置软件的窗口的大小以及位置 我们有两个框架选择:window_manager和bitsdojo_window 对比bitsdojo_window 特性bitsdojo_windowwindow_manager自定义标题栏✅ 支持❌ 不支持控制窗口行为(大小/位置)✅(基本…

在开发桌面软件的时候我们经常需要配置软件的窗口的大小以及位置
我们有两个框架选择:window_manager和bitsdojo_window


对比bitsdojo_window

特性bitsdojo_windowwindow_manager
自定义标题栏✅ 支持❌ 不支持
控制窗口行为(大小/位置)✅(基本)✅(更全面)
拖动窗口自定义区域
是否保留原生边框❌(默认隐藏)✅(保留系统默认)
最小化/最大化/关闭功能
监听窗口事件
跨平台支持Windows, macOS, LinuxWindows, macOS, Linux

组合使用建议

实际上,很多 Flutter 桌面项目会 同时使用这两个库

  • bitsdojo_window 自定义 UI 和拖动区域;

  • window_manager 控制窗口行为(比如窗口置顶、限制大小、获取当前窗口状态)。

bitsdojo_window支持的特性 

- 自定义窗口框架 - 移除 Windows/macOS/Linux 的标准标题栏和按钮
- 启动时隐藏窗口
- 显示/隐藏窗口
- 使用 Flutter 小部件移动窗口
- 最小化/最大化/恢复/关闭窗口
- 设置窗口大小、最小尺寸和最大尺寸
- 设置窗口位置
- 设置窗口在屏幕上的对齐方式(居中/左上/右上/左下/右下)
- 设置窗口标题


hello word

在flutter启动时设置窗口样式

void main() async {runApp(const MyApp());doWhenWindowReady(() async {final win = appWindow;const initialSize = Size(300, 450);win.minSize = initialSize;win.size = initialSize;win.alignment = Alignment.center;win.title = "Custom window with Flutter";win.show();});
}

在MainFlutterWindow 中增加

在您的应用程序文件夹中,转到macos\runner\MainFlutterWindow.swift并在以下行后添加此行import FlutterMacOS

import FlutterMacOS
import bitsdojo_window_macos // Add this line

然后将此行从:

class MainFlutterWindow: NSWindow {

对此:

class MainFlutterWindow: BitsdojoWindow {

更改后NSWindow,在BitsdojoWindow更改的行下方添加以下行:

override func bitsdojo_window_configure() -> UInt {return BDW_CUSTOM_FRAME | BDW_HIDE_ON_STARTUP
}

您的代码现在应如下所示:

class MainFlutterWindow: BitsdojoWindow {override func bitsdojo_window_configure() -> UInt {return BDW_CUSTOM_FRAME | BDW_HIDE_ON_STARTUP}override func awakeFromNib() {... //rest of your code

如果您不想使用自定义框架而更喜欢标准窗口标题栏和按钮,则可以BDW_CUSTOM_FRAME从上面的代码中删除标志。

如果您不想在启动时隐藏窗口,您可以BDW_HIDE_ON_STARTUP从上面的代码中删除标志。

运行效果

 

自定义topbar

mac平台不能自定义 关闭/缩小/放大,windows可以

dojo_window windowbutton 用于这三者的基础封装,有三个实现

组件名说明
MinimizeWindowButton()最小化按钮
MaximizeWindowButton()最大化按钮
CloseWindowButton()关闭按钮
WindowButtons(自定义)通常你会组合多个按钮形成自己的窗口按钮区域

WindowButton 参数详解

这是核心组件,其他三个按钮都基于它封装:

WindowButton({required VoidCallback onPressed,required WindowButtonColors colors,required Widget icon,bool animate = true,double? iconSize,
})

参数说明:

参数名类型说明
onPressedVoidCallback点击按钮的事件处理函数(比如最小化窗口)
colorsWindowButtonColors定义按钮在不同状态下的颜色(常用)
iconWidget按钮显示的图标,一般是 Icon(Icons.XXX)
animatebool是否启用 hover 动画(默认开启)
iconSizedouble?图标大小(可选,默认 10~16)

WindowButtonColors

用于自定义按钮颜色

WindowButtonColors({required Color iconNormal,required Color mouseOver,required Color mouseDown,required Color iconMouseOver,required Color iconMouseDown,
})

示例说明:

属性名说明
iconNormal默认状态下图标颜色
mouseOver鼠标悬停时的按钮背景颜色
mouseDown鼠标点击时的按钮背景颜色
iconMouseOver悬停时的图标颜色
iconMouseDown点击时的图标颜色

✅ 示例用法

CloseWindowButton(colors: WindowButtonColors(iconNormal: Colors.white,mouseOver: Colors.red,mouseDown: Colors.redAccent,iconMouseOver: Colors.white,iconMouseDown: Colors.white,),
)

或者使用 WindowButton 自定义:

WindowButton(onPressed: () => print("Clicked!"),icon: Icon(Icons.settings, size: 14, color: Colors.white),colors: WindowButtonColors(iconNormal: Colors.white,mouseOver: Colors.blueGrey,mouseDown: Colors.blue,iconMouseOver: Colors.white,iconMouseDown: Colors.white,),
)

http://www.dtcms.com/wzjs/553219.html

相关文章:

  • 高端响应式网站邯郸网络
  • 做内贸的什么网站效果好wordpress视频播放系统
  • 摄影作品共享网站开发背景抖音小店代运营
  • 网站建设的售后服务流程中国品牌设计
  • 做网站所需要的代码网页联系我们怎么做
  • 网站建设注意事项知乎做网站优化推广多少钱
  • 网站建设需要的手续织梦cms默认密码
  • wordpress被大量注册南通网站排名优化价格
  • 哪家企业的网站做的好淮南餐饮网站建设
  • 邯郸wap网站建设公司邢台专业网站建设价格
  • 晋中品牌网站建设建设网络工程可以从事什么工作
  • 重庆网站优化软件文字转链接网址
  • 怎样策划一个营销型网站10个暴利小生意创业
  • 静安做网站公司wordpress个人博客简约
  • 合肥网站专业制作电子商务公司创意名字
  • .net怎么做网站提供零基础网站建设教学培训
  • 一起买买买网站建设网页设计模板html代码压缩包下载
  • 顺义网站建设工程建设服务平台
  • 网站开发类虚拟主机和vps的区别
  • 百度站内搜索海口网站排名推广
  • 价格便宜的网站建设郑州网站提升排名
  • 淘宝联盟推广网站怎么建设最新网站模板
  • 中国山东建设监理协会网站南昌电子商务网站建设
  • 做网站申请域名的流程南阳网站推广价格
  • 大庆市住房和城乡建设局网站wordpress文章前台看不到
  • 网站模版自适应网站开发管理系统有哪些
  • 江苏宜安建设有限公司网站蓝色高科技网站模板
  • 网站功能建设描述书网站备案是域名备案还是空间备案
  • 自己编写网站vs做网站用3层架构
  • 提供常州微信网站建设微信营销系统