tauri学习(4)-多窗口
接上节继续,今天研究tauri中的多窗口,要实现多窗口有几种方式:
一、改配置tauri.conf.json
仍然以react项目模式为例,假设我们有2个页面效果:
在浏览器中运行起来长这样:
tauri中,如果想开2个窗口,分别对应于这2个页面,可以参考下图配置:
(关于windows节点下,具体有哪些属性可配置,可参考官网文档)
运行起来效果如下:
二、Rust中使用app创建窗口
use tauri::{WindowBuilder, WindowUrl}; fn main() {
tauri::Builder::default()
.setup(|app| {
WindowBuilder::new(
app,
"external",
WindowUrl::External("http://yjmyzz.cnblogs.com/".parse().unwrap()),
)
.title("菩提村下的杨过")
.inner_size(640.0, 480.0)
.position(50.0, 100.0)
.build()?;
Ok(())
})
.run(tauri::generate_context!())
.expect("error while running tauri application");
}
运行起来后,加上方式1中的2个窗口,总共会有3个窗口:
三、前端创建窗口
3.1 使用tauri::command
上节学习过前端可以调用Rust中的方法,同样这种方式,也可以创建窗口。先把tauri.conf.json中的配置恢复成单窗口,方式二中创建的窗口也去掉,然后加1个可供前端调用的新方法:
然后在Home组件中,调用该方法:
运行效果:
3.2 js API调用
运行效果:
四、运行时获取窗口引用
比如想用代码把前面创建的2个about窗口给关闭,就必须先获取窗口的引用,参考下面的代码:
运行效果:
参考文章:
https://tauri.app/v1/guides/features/multiwindow
tauri学习(4)-多窗口的更多相关文章
- 【Qt学习笔记】窗口部件整理
关于Qt中窗口部件的学习 今天开始学习Qt的窗口部件,领略一下Qt的神奇之处,记得2012年的那年冬天,我还学Java呢,现在基本上和Java说再见了,不过对于嵌入式的开发Qt还是举足轻重的,我想趁着 ...
- (java)selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致
描述:selenium webdriver学习--打开新窗口,并判断新窗口是否与目标窗口一致,若一致则切换到该窗口并获取标题 跳出if判断,获取父级标题,并关闭 HTML标签不太明显时,可以用路径表示 ...
- OpenGL学习 (一) - 简单窗口绘制
一.OpenGL 简介 OpenGL 本质: OpenGL(Open Graphics Library),通常可以认为是API,其包含了一系列可以操作图形.图像的函数.但深究下来,它是由Khronos ...
- PyQt(Python+Qt)学习随笔:窗口layout布局的SizeConstraint和部件的大小约束策略sizePolicy不起作用的问题
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 在写一个测试代码时,发现无论怎么设置窗口以及子部件 ...
- PyQt(Python+Qt)学习随笔:窗口对象尺寸调整相关的函数resize、showMaximized、showNormal、showMinimized
resize(width,height) resize可以直接调整窗口的尺寸,调整效果类似于鼠标直接拉伸或缩小窗口,但窗口大小的最大值.最小值受窗口的sizePolicy.sizeHint.minim ...
- Qt学习之自定义窗口部件
自定义Qt窗口部件 实现一个十六进制的SpinBox,一般SpinBox只支持十进制整数,但是可以子类化方法实现该功能 需重新实现以下虚函数 virtual QString textFromValue ...
- 零基础Android学习笔记-03 窗口间的数据传递
1.通过全局变量来传递. 新建一个全局的类继承于Application package com.example.helloworld; import android.app.Application; ...
- Unity3D GUI学习之GUI窗口的使用
GUI还可以定义一个窗口,在窗口里面进行控件的添加: using UnityEngine; using System.Collections; public class getbutton : Mon ...
- WPF学习笔记-自定义窗口
代码部分 <Style x:Key="for_noresize_window" TargetType="{x:Type Window}"> < ...
- Win32汇编学习(9):窗口控件
这次我们将探讨控件,这些控件是我们程序主要的输入输出设备. 理论: WINDOWS 提供了几个预定义的窗口类以方便我们的使用.大多数时间内,我们把它们用在对话框中,所以我们一般就它们叫做子窗口控件.子 ...
随机推荐
- 17.1K star!两小时就能训练出专属于自己的个性化小模型,这个开源项目让AI触手可及!
「只需一张消费级显卡,2小时完成26M参数GPT训练!」「从零构建中文大模型的最佳实践指南」「兼容OpenAI API,轻松接入各类AI应用平台」 项目介绍 MiniMind是由开发者Jingyao ...
- 时间工具之“Java8 LocalDate 根据给定的日期,获取该日期上一周的周一周日,以及TemporalAdjusters的API”
一.场景 我们的周报需要获取该月的第一个周的星期一和星期日,用于计算该星期的功能业绩(如:上产品数量) 2022-04-25 00:00:00 到 2022-05-01 23:59:592022-05 ...
- 应用间通信(一):详解Linux进程IPC
进程之间是独立的.隔离的,使得应用程序之间绝对不可以互相"侵犯"各自的领地. 但,应用程序之间有时是需要互相通信,相互写作,才能完成相关的功能,这就不得不由操作系统介入,实现一种通 ...
- C#数据结构之Tree
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Redundant Connection——LeetCode进阶路
原题链接https://leetcode.com/problems/redundant-connection/ 题目描述 In this problem, a tree is an undirecte ...
- 2025最好的Next.js面试
2025最好的Next.js面试题(一) 最近在面试,就写一些关于问到的面试题,同时也过一下知识点. 基础概念 什么是Next.js?它与React的关系是什么? Next.js是一个基于React的 ...
- 我的Vue之旅(3)
2020-10-24 程序员节快乐哈! 因为有相当一部分内容都是相互穿插的,今天也就不写那么多重复的Demo了,直接写一下对所学内容的理解吧. 插值 关于插值这一块其实也没啥说的,文本插值都是最熟悉不 ...
- Go交叉编译
#在Mac上编译linux平台应用 GOOS=linux GOARCH=amd64 go build hello.go #在Windows上编译linux平台应用(关闭CGO) CGO_ENABLED ...
- 聊一聊 .NET在Linux下的IO多路复用select和epoll
一:背景 1. 讲故事 在windows平台上,相信很多人都知道.NET异步机制是借助了Windows自带的 IO完成端口 实现的异步交互,那在 Linux 下.NET 又是怎么玩的呢?主要还是传统的 ...
- SAP在中国,已经做成了垃圾了。。。
1.自从SAP眼红互联网之后,SAP在UI的路上一骑绝尘,一路过关斩将,离阎罗殿越来越近... 2.中国国情,用户凌驾系统之上. 作为二次开发的系统,对用户的一些定制化开发本来是一大特色和卖点.但是经 ...