Go言語/gotronで付箋紙みたいなタイトルバーなし&ドラッグ移動するフォームを作ってみた
Go言語でElectronを利用するためのAPI 「gotron」を使ってタイトルバーなしタスクバー非表示でどこでもドラッグできる付箋紙のようなものを作ってみました。動きは以下の動画をご覧ください。
外観はこんな感じです。タイトルバーがないので終了ボタンを設置しておきました。
HTML側のソースはこちら。ドラッグを有効にするためにbodyタグのスタイルに-webkit-app-region:drag
を加えています。また、それだとボタンが押せなくなってしまうのでbuttonタグのスタイルに-webkit-app-region: no-drag
を設定しています。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=<device-width>, initial-scale=1.0"> <title>Sticky Note</title> </head> <body style="-webkit-app-region:drag; background-color:antiquewhite;"> <h1>Sticky Note</h1> <button style="-webkit-app-region: no-drag" onclick="window.close();">終了</button> <script> </script> </body> </html>
Go言語側のソースコードはこちら。ソースコード内のコメント参照。
package main import ( "github.com/Equanox/gotron" ) func main() { window, err := gotron.New("apps") if err != nil { panic(err) } window.WindowOptions.Width = 400 window.WindowOptions.Height = 150 window.WindowOptions.Title = "Gotron" //メニューバーを隠す window.WindowOptions.AutoHideMenuBar = true //タスクバー非表示 window.WindowOptions.SkipTaskbar = true //ウィンドウのフレーム(タイトルバー含む)を非表示 window.WindowOptions.Frame = false done, err := window.Start() if err != nil { panic(err) } <-done }
スポンサーリンク