在Windos 10专业版搭建Fyne(Go 跨平台GUI)开发环境

目录

  • 在Windos 10专业版搭建Fyne(Go 跨平台GUI)开发环境
    • 一 Fyne 和 MSYS2简介
      • 1.1 Fyne
      • 1.2 MSYS2
    • 二 安装 MSYS2
      • 2.1 下载MSYS2
      • 2.2 安装
      • 2.3 环境变量设置
      • 2.4 检测安装环境
    • 三 参考文档

在Windos 10专业版搭建Fyne(Go 跨平台GUI)开发环境

一 Fyne 和 MSYS2简介

1.1 Fyne

fyne 是一个用于 Go 语言的 GUI 包,它提供了一个简单而强大的界面构建框架。
fyne 的核心是一个事件驱动的渲染引擎,它可以轻松地创建具有丰富交互性的图形界面。该框架提供了丰富的内置控件,如按钮、文本框、标签、列表等,并且支持自定义控件的创建。
此外,fyne 还提供了一系列的工具和函数,用于处理界面事件、绘制图形、处理图像和字体等。它还支持跨平台开发,可以在 Windows、macOS 和 Linux 等多个操作系统上运行。
总的来说,fyne 是一个非常强大和灵活的 GUI 包,可以帮助开发人员快速创建具有高交互性的图形界面。它简单易用,并且具有很高的可扩展性,可以满足各种不同的界面需求。

1.2 MSYS2

MSYS2 是一个基于 MinGW-w64 的发行版,它提供了一个完整的 POSIX 工具链和开发环境,可以让开发人员在 Windows 上轻松地进行开源开发。

MSYS2 包括了许多流行的开源工具,如 GCC、GDB、Make、Python、Perl 等等。它还提供了一个 Bash shell,可以让开发人员像在 Linux 上一样使用命令行。

使用 MSYS2,开发人员可以编译、调试和运行各种开源软件,包括 C、C++、Java、Python 等语言的程序。此外,MSYS2 还可以与其他 Windows 应用程序无缝集成,例如 Microsoft Visual Studio、 Eclipse CDT 等。

总的来说,MSYS2 是一个非常强大和灵活的发行版,为开发人员在 Windows 上进行开源开发提供了一个完整的解决方案。

二 安装 MSYS2

2.1 下载MSYS2

MSYS2下载地址

2.2 安装

选择安装目录(根据个人喜好进行选择),如图1:
图1
安装完成,如图2:
图2
启动UCRT64环境:
图3
执行以下安装命令:

pacman -Syu
pacman -S git mingw-w64-x86_64-toolchain
pacman -S mingw-w64-ucrt-x86_64-gcc
gcc --version

各环境的差别,如图4:
图4

2.3 环境变量设置

环境变量设置包括windows环境变量设置和UCRT64两个环境,Windows 环境需要加入:

图5
UCRT64环境变量PATH加入Go的bin目录:
图6
执行:

source .bashrc
go version
go install fyne.io/fyne/v2/cmd/fyne@latest

正确显示go版本及安装fyne命令行,即配置成功!

2.4 检测安装环境

下载Fyne Setup

解压后双击exe文件,显示如下则环境配置成功!
图5
注意:使用Goland进行开发时,编译环境需加入:

CC=gcc;CGO_ENABLED=1;GOARCH=amd64;GOOS=windows

否则报错:

imports github.com/go-gl/gl/v3.2-core/gl: build constraints exclude all Go files in E:\workspace\go\...

中文显示乱码解决方法:
在mian包中init函数加入:

func init() {//设置中文字体:解决中文乱码问题fontPaths := findfont.List()for _, path := range fontPaths {if strings.Contains(path, "msyh.ttf") || strings.Contains(path, "simhei.ttf") || strings.Contains(path, "simsun.ttc") || strings.Contains(path, "simkai.ttf") {os.Setenv("FYNE_FONT", path)break}}
}

Windows下打包:

fyne package -os windows -icon app.jpg

三 参考文档

3.1 Fyne 官方帮助文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/84909.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java内存分页工具类

hutool 依赖&#xff1a; <dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.5.7</version></dependency>代码如下&#xff1a; import cn.hutool.core.util.PageUtil; import lombok…

Greenplum实用工具-gpfdist

注&#xff1a;本文翻译自https://docs.vmware.com/en/VMware-Greenplum/7/greenplum-database/utility_guide-ref-gpfdist.html 向Greenplum数据库段提供数据文件或从数据库段写入数据文件。 语法 gpfdist [-d <directory>] [-p <http_port>] [-P <last_http…

zabbix学习2--zabbix6.x高可用

文章目录 1. server高可用-默认HA2. 访问高可用 1. server高可用-默认HA 1.部署zabbix单节点后&#xff0c;配置添加HANodeName和NodeAddress即为HA架构 2.zabbix1故障后切换zabbix2使用 3.浏览器访问主机1&#xff0c;使用主机1php前端连接mysql后zabbix2提供后台服务--------…

算法-单词搜索 II

算法-单词搜索 II 1 题目概述 1.1 题目出处 https://leetcode.cn/problems/word-search-ii/description/?envTypestudy-plan-v2&envIdtop-interview-150 1.2 题目描述 2 DFS 2.1 解题思路 每个格子往上下左右四个方向DFS&#xff0c;拼接后的单词如果在答案集中&…

API接口大全:常用、热门、免费的都有

常用、热门、免费的第三方接口应有尽有… 二次号查询&#xff1a;通过手机号查询是否二次入网&#xff0c;直连三大运营商&#xff0c;精准查询。反欺诈&#xff08;羊毛盾&#xff09;&#xff1a;反机器欺诈&#xff0c;检测异常IP、异常手机号。IP应用场景-IPv4&#xff0c…

基于TCP的简易电子词典

头文件&#xff1a; #ifndef __HEAD_H__ #define __HEAD_H__#include <myhead.h>#define N 32 typedef struct {int type;char name[N];char data[256];int option;int flag; }MSG;#define R 1 // 用户注册 #define L 2 // 用户登录 #define Q 3 // 查询…

【若依框架2】前后端分离版本添加功能页

在VSCode的src/views下新建个文件平example,在example下创建test文件夹&#xff0c;在test里创建index.vue文件 <template> <h1>Hello world</h1> </template><script> export default {name: "index" } </script><style s…

2023/9/20总结

maven maven本质是 一个项目管理工具 将项目开发 和 管理过程 抽象成 一个项目对象模型&#xff08;POM&#xff09; POM &#xff08;Project Object Model&#xff09; 项目对象模型 作用 项目构建 提供标准的自动化 项目构建 方式依赖管理 方便快捷的管理项目依赖的资源…

C++【个人笔记1】

1.C的初识 1.1 简单入门 #include<iostream> using namespace std; int main() {cout << "hello world" << endl;return 0; } #include<iostream>; 预编译指令&#xff0c;引入头文件iostream.using namespace std; 使用标准命名空间cout …

springboot整合返回数据统一封装

1、MagCode&#xff0c;错误码枚举类 package com.mgx.common.enums;import lombok.*; import lombok.extern.slf4j.Slf4j;/*** 错误码* author mgx*/ Slf4j NoArgsConstructor AllArgsConstructor public enum MsgCode {/*** 枚举标识&#xff0c;根据业务类型进行添加*/Code…

轻量云服务器租用好在哪

从技术上讲&#xff0c;轻量级云服务器是特化了某一配置的高性价比云服务器的结合。下面&#xff0c;我们将了解轻量级云服务器有什么优 势&#xff0c; 使用物理服务器搭建网站&#xff0c;您需要租用整个服务器&#xff0c;这成本会变得非常昂贵。这对于一些比较简单的使用需…

PostgreSQL 数据库实现公网远程连接

文章目录 前言1. 安装postgreSQL2. 本地连接postgreSQL3. Windows 安装 cpolar4. 配置postgreSQL公网地址5. 公网postgreSQL访问6. 固定连接公网地址7. postgreSQL固定地址连接测试 前言 PostgreSQL是一个功能非常强大的关系型数据库管理系统&#xff08;RDBMS&#xff09;,下…

建议收藏《Verilog代码规范笔记_华为》(附下载)

华为verilog编程规范是坊间流传出来华为内部的资料&#xff0c;其贴合实际工作需要&#xff0c;是非常宝贵的资料&#xff0c;希望大家善存。至于其介绍&#xff0c;在此不再赘述&#xff0c;大家可看下图详细了解&#xff0c;感兴趣的可私信领取《Verilog代码规范笔记_华为》。…

JS【filter过滤器】的用法

在JavaScript中&#xff0c;filter()是一个高阶函数&#xff0c;它是数组(Array)的一部分&#xff0c;可用于创建一个新数组&#xff0c;其中包含通过所提供函数实现的测试的所有元素。 filter()函数的语法如下&#xff1a; let newArray arr.filter(callback(element[, ind…

Spring面试题1:Spring框架的核心功能是什么?Spring框架的好处是什么?

该文章专注于面试,面试只要回答关键点即可,不需要对框架有非常深入的回答,如果你想应付面试,是足够了,抓住关键点 Spring框架的核心功能是什么 Spring框架的核心功能包括: 控制反转(IoC):Spring通过IoC容器管理对象的生命周期和依赖关系。它将对象的创建、组装和管理…

React中的dispatch()

在React中&#xff0c;dispatch函数是Redux提供的一个方法&#xff0c;用于触发store中的action。它是Redux中的一个核心概念&#xff0c;用于将action传递给store&#xff0c;从而触发相应的状态更新。 当我们调用dispatch函数时&#xff0c;它会将action对象作为参数&#x…

IDEA开发工具技巧

1.1 IDEA相关插件 idea插件下载地址&#xff1a;https://plugins.jetbrains.com/ 开发必装插件&#xff1a; &#xff08;1&#xff09; 快速查找api接口 RestfulTool 插件&#xff0c;推荐指数⭐⭐⭐⭐⭐ [RestfulTool搜索插件使用详解](https://blog.csdn.net/weixin_450147…

Spring学习笔记2 Spring的入门程序

Spring学习笔记1 启示录_biubiubiu0706的博客-CSDN博客 Spring官网地址:https://spring.io 进入github往下拉 用maven引入spring-context依赖 写spring的第一个程序 引入下面依赖,好比引入Spring的基本依赖 <dependency><groupId>org.springframework</groupId&…

【力扣】9. 回文数

题目描述 给你一个整数 x &#xff0c;如果 x 是一个回文整数&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 回文数是指正序&#xff08;从左向右&#xff09;和倒序&#xff08;从右向左&#xff09;读都是一样的整数。 例如&#xff0c;121 是回文&am…

医学影像信息(PACS)系统软件源码

PACS系统是PictureArchivingandCommunicationSystems的缩写&#xff0c;与临床信息系统&#xff08;ClinicalInformationSystem,CIS&#xff09;、放射学信息系统(RadiologyInformationSystem,RIS)、医院信息系统(HospitalInformationSystem,HIS)、实验室信息系统&#xff08;L…