Здравствуйте, c-smile
А как у диалогового окна открыть еще одно диалоговое окно.
Как я понимаю view надо на что то поменять?
package main
import (
"io/ioutil"
"log"
"os"
"path/filepath"
"strings"
"github.com/sciter-sdk/go-sciter"
"github.com/sciter-sdk/go-sciter/window"
)
var Dir, File string
func main() {
dir, err := ioutil.TempDir("", "example")
Dir = dir
defer os.RemoveAll(dir)
w, err := window.New(sciter.SW_TITLEBAR|sciter.SW_RESIZEABLE|sciter.SW_CONTROLS|sciter.SW_MAIN|sciter.SW_ENABLE_DEBUG, nil)
tmpfn := filepath.Join(Dir, "1.htm")
if err := ioutil.WriteFile(tmpfn, []byte(form_menu()), 0644); err != nil {
log.Fatal(err)
}
File = strings.Replace(tmpfn, "\\", "/", -1)
if err != nil {
log.Fatal("Create Window Error: ", err)
}
w.LoadFile(File )
setEventHandler(w)
w.Show()
w.Run()
}
func setEventHandler(w *window.Window) {
w.DefineFunction("opendialog", func(args ...*sciter.Value) *sciter.Value {
return sciter.NewValue(File)
})
}
func form_menu() string {
return `
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<title>Телефонные счета</title>
<style>
button > menu { width:*; }
popup { background:black; padding:1em; border:1px solid; prototype: PopupDialog; }
</style>
<script type="text/tiscript">
function showDialog(r) {
var result = view.dialog { url: r };
return result;
}
self#sotr.on("click", function(){
var r = view.opendialog("opendialog","");
showDialog(r);
})
</script>
</head>
<body>
<button|menu #main>Справочники
<menu>
<li #sotr>Сотрудники</li>
</menu>
</button>
</body>
</html>
`
}