lablgtk2, GEdit.entry предотвращает отображение окна - PullRequest
0 голосов
/ 03 февраля 2020

Я изучал Lablgtk2 для OCaml, и все было хорошо и работало, но когда я попытался добавить 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, как сказано здесь . Я установил lablgtk, используя opam с opam install lablgtk

ОБНОВЛЕНИЕ: Я установил lablgtk3 и протестировал его снова, теперь все работает нормально.

...