Я разрабатываю настольный пользовательский интерфейс во Flutter, и мне нужно создать кнопки для выполнения команд оболочки.
Я уже могу выполнять некоторые простые команды, такие как ls -l
, и он хорошо показывает свои результаты в консоли.
Однако мне нужен способ показать результаты в основном приложении, а не в консоли, я пробовал снэк-бар, но он не так хорош, и он не получает вывод от других команд, которые дают динамику c выходы.
Я хотел бы посмотреть динамические c выходы, такие как tail -f
и top
.
Как я могу открыть новое окно в приложении флаттера, чтобы показать выполнение команды?
На данный момент у меня есть это:
class LsButton extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Center(
child: RaisedButton(
onPressed: () {
Process.run('ls', ['-l']).then((ProcessResult results) {
Flushbar(
title: "Output",
message: results.stdout,
duration: Duration(seconds: 15),
)..show(context);
});
},
child: Text('Show dir contents!',
style: TextStyle(
fontSize: 10,
),)
),
);
}}