Skip to content

[desktop_multi_window] debug模式下有一些问题 #128

@guchengxi1994

Description

@guchengxi1994
  1. 使用r刷新的时候,会自动生成一个窗口,以下是部分代码:
 // main 函数
 void main(List<String> args) {
if (args.firstOrNull == 'multi_window') {
  final windowId = int.parse(args[1]);
  debugPrint("[windowId]:$windowId");
  runApp(MltoolsViewerHelper(
    windowController: WindowController.fromWindowId(windowId),
  ));
} else {
  runApp(const MyApp());
}
}
//  主窗体
@override
void initState() {
  super.initState();
  DesktopMultiWindow.setMethodHandler(_handleMethodCallback);

  WidgetsBinding.instance.addPostFrameCallback((timeStamp) async {
    final window = await DesktopMultiWindow.createWindow(jsonEncode({
      'args1': 'Sub window',
      'args2': 100,
      'args3': true,
      'bussiness': 'bussiness_test',
    }));
    window
      ..setFrame(const Offset(0, 0) & const Size(500, 720))
      ..center()
      ..setTitle('Mltools Viewer Helper')
      ..show();
  });
}

// 子窗体只是一般的窗体
  1. 执行过程中使用 ctrl + c中断进程,任务管理器中还是会有一个进程存在,再次执行 flutter run会报错,需手动杀死后台进程才能继续

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions