lxn / walk

A Windows GUI toolkit for the Go Programming Language
Other
6.83k stars 884 forks source link

invalid memory address or nil pointer dereference #713

Open dzcpy opened 4 years ago

dzcpy commented 4 years ago
Administrator@USERUQI-0UPTB7Q MINGW64 /e/projects/test/walk/examples/progressindicator (master)
$ go build dialog_ui.go pi.go
go: finding github.com/lxn/walk latest
go: finding github.com/lxn/win latest
go: finding golang.org/x/sys latest

Administrator@USERUQI-0UPTB7Q MINGW64 /e/projects/test/walk/examples/progressindicator (master)
$ ./dialog_ui.exe
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x20 pc=0x59e7a7]

goroutine 1 [running, locked to thread]:
github.com/lxn/walk.(*ContainerBase).CreateLayoutItem(0xc0000c0000, 0xc000046cc0, 0x0, 0x0)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/container.go:118 +0x37
github.com/lxn/walk.CreateLayoutItemsForContainerWithContext(0x730de0, 0xc0000c0000, 0xc000046cc0, 0x1c2, 0x72e760)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/layout.go:64 +0xd6
github.com/lxn/walk.CreateLayoutItemsForContainer(0x730de0, 0xc0000c0000, 0x1fa, 0x381)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/layout.go:50 +0xba
github.com/lxn/walk.(*FormBase).startLayout(0xc0000ba000, 0x67078e)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/form.go:685 +0xd4
github.com/lxn/walk.(*FormBase).WndProc(0xc0000ba000, 0x67078e, 0x47, 0x0, 0xd9fdd0, 0x0)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/form.go:790 +0x845
github.com/lxn/walk.(*Dialog).WndProc(0xc0000ba000, 0x67078e, 0x47, 0x0, 0xd9fdd0, 0xc000083ac8)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/dialog.go:259 +0x8a
github.com/lxn/walk.defaultWndProc(0x67078e, 0x47, 0x0, 0xd9fdd0, 0x0)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/window.go:2104 +0xf0
syscall.Syscall(0x7ff91d1c48f0, 0x2, 0x67078e, 0x8, 0x0, 0x0, 0x0, 0x0)
        c:/go/src/runtime/syscall_windows.go:184 +0xfa
github.com/lxn/win.ShowWindow(0x67078e, 0x8, 0xc000083d78)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/win@v0.0.0-20191128105842-2da648fda5b4/user32.go:3273 +0x6a
github.com/lxn/walk.setWindowVisible(...)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/window.go:1328
github.com/lxn/walk.(*WindowBase).SetVisible(0xc0000ba000, 0x1)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/window.go:1292 +0x70
github.com/lxn/walk.(*FormBase).Show(0xc0000ba000)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/form.go:566 +0x141
github.com/lxn/walk.(*Dialog).Show(0xc0000ba000)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/dialog.go:191 +0x50
github.com/lxn/walk.(*Dialog).Run(0xc0000ba000, 0xc000046ca0)
        C:/Users/Administrator/go/pkg/mod/github.com/lxn/walk@v0.0.0-20200806153934-8721e9bc9ff7/dialog.go:234 +0x32
main.RunMyDialog(0x0, 0x0, 0x0, 0x0, 0x0)
        E:/projects/test/walk/examples/progressindicator/pi.go:78 +0x2bf
main.main()
        E:/projects/test/walk/examples/progressindicator/pi.go:18 +0x30

What could be the issue?

lxn commented 4 years ago

It looks like you may have forgotten to set a Layout on some Container.

zhangpy commented 3 years ago

this is the example code https://github.com/lxn/walk/tree/master/examples/progressindicator