我正在为 OCaml 学习 Lablgtk2,一切都很好并且可以正常工作,但是当我尝试添加GEdit.entry
到任何容器时,执行会停在那里,之后的任何事情都不会执行。但程序继续运行,我必须用^C
. 例如
let local = GMain.Main.init ()
let main () =
let window = GWindow.window ~title:"Entry Test"
~width:200 ~height:200 () in
let hbox = GPack.hbox ~packing:window#add () in
let entry = GEdit.entry () in
(* window#show (); this will show an empty window *)
hbox#pack entry#coerce; (* this seems to be the problem *)
window#show (); (* this won't be shown*)
let win2 = GWindow.window ~title:"another window"
~width:200 ~height:200 () in
win2#show (); (* this won't be shown either *)
GMain.Main.main ()
let _ = main ()
使用~packing:
标签是一样的。
我正在运行 Ubuntu 19.10,并且我已经安装了 gtk2,如此处所述。我已经使用 opam 安装了 lablgtk
opam install lablgtk
更新:我安装了 lablgtk3 并再次测试,现在一切正常。