同步操作将从 不在乎y/govcl 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
1、由于现有第三方的Go UI库不是太宠大就是用的不习惯,或者组件太少。就萌生了自己写一个UI库的相法
Delphi有些许多优秀的VCL组件,不拿来使用太可惜了。所以就索性做了一套。目前支持Win32跟Win64,
只需要带上一个libvcl.dll即可。
2、项目现在支持VCL标准控件中的大部分,足以满足日常操作了,具体见支持的组件列表。
事件方面也支持部分,如下:
TGoEvent = (geClick, geClose, geFormClose, geFormCloseQuery, geChange,
geUpDownClick, geTreeViewChange, geListViewChange, geDblClick, gePaint,
geResize, geShow, geMenuChange, geEnter, geExit, gePopup, geBalloonClick,
geLinkClick, geExecute, geUpdate, geException, geTimer, geMinimize,
geRestore, geHide, geKeyDown, geKeyPress, geKeyUp, geMouseDown,
geMouseEnter, geMouseLeave, geMouseMove, geMouseUp, geMouseWheel);
所有的代码只会存储在OSC的码云中,原因在于go包路径的问题。
至于github上会建一个同名的项目govcl,但不会提交任何代码
xui包目前还未完成,但不影响正常使用
后面视情况慢慢补充相关VCL组件的知识,详情可以WIKI
go get gitee.com/ying32/govcl
package main
import (
"gitee.com/ying32/govcl/vcl"
)
var (
mainForm *vcl.TForm
)
func main() {
vcl.Application.Initialize()
mainForm = vcl.Application.CreateForm()
mainForm.SetCaption("Hello")
mainForm.EnabledMaximize(false)
mainForm.ScreenCenter()
vcl.Application.Run()
}
复制"bin\win32\libvcl.dll"或者"bin\win64\libvclx64.dll"到当前exe目录或系统环境路径下
按照Delphi中的Application、 Screen、 Mouse、Clipboard四个类实例是可以直接访问的,不需要释放
其实组件带有Owner参数的一般指定当前组件对应的TForm就好了,这样就不需要手动释放,反之Owner填
写nil则需要手动调用Free,就像其它非组件类的。
文件名后面带有def的为手动编写
by: ying32
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。