博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
go语言使用go-sciter创建桌面应用(五) 加载元素资源
阅读量:6150 次
发布时间:2019-06-21

本文共 1768 字,大约阅读时间需要 5 分钟。

有些时候我们需要动态的给某个UI元素加载内容或数据。

demo6.go代码如下:

package main;import (	"github.com/sciter-sdk/go-sciter/window"	"github.com/sciter-sdk/go-sciter"	"log"	"fmt")func load(root *sciter.Element) {	frame, _ := root.SelectById("frame");	//load()类似jquery.load(),用于给元素加载指定内容	//加载html内容	frame.Load("http://www.qq.com", sciter.RT_DATA_HTML);	txt, _ := root.SelectById("txt");	//附加元素事件处理	txt.AttachEventHandler(&sciter.EventHandler{		//OnDataArrived 当资源被加载但未使用时调用		//返回true,取消资源使用		//返回false,遵循正常过程		OnDataArrived: func(he *sciter.Element, params *sciter.DataArrivedParams) bool {			//设置元素html			he.SetHtml(string(params.Data()), sciter.SIH_REPLACE_CONTENT);			return false;		},	});	//加载本地原始数据	txt.Load("file:///D:/gopath/src/gui/1.txt", sciter.RT_DATA_RAW);	img, _ := root.SelectById("img");	img.AttachEventHandler(&sciter.EventHandler{		//OnDataArrived 当资源被加载但未使用时调用		OnDataArrived: func(he *sciter.Element, params *sciter.DataArrivedParams) bool {			//设置属性,给img标签设置src			he.SetAttr("src", params.Uri());			return false;		},	});	img.Load("http://mat1.gtimg.com/www/images/qq2012/qqLogoFilter.png", sciter.RT_DATA_IMAGE);	script, _ := root.SelectById("script");	script.AttachEventHandler(&sciter.EventHandler{		//OnDataArrived 当资源被加载但未使用时调用		OnDataArrived: func(he *sciter.Element, params *sciter.DataArrivedParams) bool {			fmt.Println(string(params.Data()));			return false;		},	});	//加载脚本资源	script.Load("http://apps.bdimg.com/libs/jquery/1.8.3/jquery.min.js", sciter.RT_DATA_SCRIPT);}func main() {	w, err := window.New(sciter.DefaultWindowCreateFlag, sciter.DefaultRect);	if err != nil {		log.Fatal(err);	}	//加载文件	w.LoadFile("demo6.html");	//设置标题	w.SetTitle("元素加载内容");	//获取根元素	root, _ := w.GetRootElement();	//元素加载资源	load(root);	w.Show();	w.Run();}

demo6.html代码如下:

    
元素加载内容

转载地址:http://lnwfa.baihongyu.com/

你可能感兴趣的文章
bulk
查看>>
js document.activeElement 获得焦点的元素
查看>>
C++ 迭代器运算
查看>>
【支持iOS11】UITableView左滑删除自定义 - 实现多选项并使用自定义图片
查看>>
JavaWeb学习笔记(十四)--JSP语法
查看>>
【算法笔记】多线程斐波那契数列
查看>>
java8函数式编程实例
查看>>
jqgrid滚动条宽度/列显示不全问题
查看>>
在mac OS10.10下安装 cocoapods遇到的一些问题
查看>>
angularjs表达式中的HTML内容,如何不转义,直接表现为html元素
查看>>
css技巧
查看>>
Tyvj 1728 普通平衡树
查看>>
javascript性能优化
查看>>
多路归并排序之败者树
查看>>
java连接MySql数据库
查看>>
转:Vue keep-alive实践总结
查看>>
深入python的set和dict
查看>>
C++ 11 lambda
查看>>
Android JSON数据解析
查看>>
DEV实现日期时间效果
查看>>