3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Goでデスクトップアプリを作る (QlovaSeed HelloWorld編)

Last updated at Posted at 2020-03-20

概要

QlovaSeedというクロスプラットフォームフレームワークを使ってデスクトップアプリを作ってみます。

環境

  • OS: Windows [Version 10.0.18362.720]
  • Go: go1.13.8 windows/amd64

準備

1. プロジェクト作成

まず、プロジェクトを以下の手順で作成します。1

mkdir hello-world
go mod init hello-world

2. go.modを編集

QlovaSeedをそのままgo getするとblackfriday/v2が取得できないので、以下のようにgo.modを編集して解決します。2

go.mod
module hello-world

go 1.13

require (
	// …
    //追加!!
	gopkg.in/russross/blackfriday.v2 v2.0.1
)
//追加!!
replace gopkg.in/russross/blackfriday.v2 => github.com/russross/blackfriday/v2 v2.0.1

3. QlovaSeedライブラリを入れる

下記コマンドをターミナルに入力し、ライブラリを取得します。

go get github.com/qlova/seed 

4. アプリ本体のコードを書く

最後にコードを書いていきます。

まず、seed.NewApp(string)でアプリを作成します。

次に、スペースを配置するためにexpander.AddTo(App)を配置します。これは、他にものが存在しない限り広がります。これを複数組み合わせることによって、テキストなどを任意の場所に配置できます。以下の例ではウインドウの縦における 3/1, 3/2 のところにテキストを配置しています。

スペースを配置したらtext.AddTo(App, string)でtextを配置します。この定義したtextに対して何も装飾などを行わない場合はこのまま記述するだけですが、そうでない場合はText := Text.AddTo(App, string)と結果を変数に代入することであとから装飾をすることができます。下記の例ではText.SetColor(seed.RGB(116, 196, 133))とすることで色を付けています。

最後に、App.Launch()とすることでアプリを立ち上げます。

main.go
package main

import (
    "github.com/qlova/seed"
    "github.com/qlova/seeds/text"
    "github.com/qlova/seeds/expander"
)


func main() {
	//アプリを作成
    var App = seed.NewApp("Hello World")	

    expander.AddTo(App)	//スペース
    text.AddTo(App, "Hello World!")	//テキストを配置
    expander.AddTo(App)	
    Text := text.AddTo(App, "Hello QlovaSeed!") //テキストを配置後Textに代入
    Text.SetColor(seed.RGB(116,196,133))	//Textに色を設定
    expander.AddTo(App)	

	//アプリを起動
    App.Launch()
}

5. ビルドして、HelloWorld!

go run main.go を打つと、ウインドウが立ち上がります!

image.png

最後に

作る時はGithub上のexampleが結構参考になると思います。3

  1. Go Modulesも触れてみるGo入門

  2. Code no longer builds due to broken URL github.com/russross/blackfriday/v2 #500

  3. https://github.com/qlova/seed/tree/master/examples

3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?