我试图弄清楚如何在图形小部件内实例化多行文本框。 LablGTK2 在文档方面似乎相当有限,并且对于开始看起来像我想要的东西来说 API 也很少。
我已经开始交叉引用原始 GTK2 文档,https://developer.gnome.org/gtk3/stable/gtkobjects.html ,针对 Lablgtk2 文档,http://wwwfun.kurims.kyoto-u.ac.jp/soft/lsl/lablgtk/html/GText.html .
但是,我发现的最好的教程或简单/清晰的示例利用了非常有限的单行文本输入框: http://plus.kaist.ac.kr/~shoh/ocaml/lablgtk2/lablgtk2-tutorial/x1155.html
我发现一些清晰简单的派生示例非常适合学习基础知识。有谁有示例插图展示如何使用 OCaml 和 Lablgtk/lablgtk2 设置多行文本?或者更好的推荐教程来展示如何开发多行文本框(这在任何基于 GUI 的程序中都是一个非常重要的功能)?理想情况下,我想将多行文本中的文本输入连接到我编写的 OCaml 模块,该模块将处理该文本,然后 GUI 会将处理结果显示回 GUI 上。任何帮助将不胜感激。
最佳答案
您可以使用 GtkTextView 小部件来显示多行文本:
let _ =
(* prepare main window *)
let window = GWindow.window () in
window#connect#destroy ~callback:GMain.Main.quit;
(* add text view with scroll bars *)
let scroll = GBin.scrolled_window
~hpolicy:`AUTOMATIC ~vpolicy:`AUTOMATIC
~packing:window#add () in
let textview = GText.view ~packing:scroll#add_with_viewport () in
(* set text *)
textview#buffer#set_text "multi-\nline\ntext";
(* show everything and enter main loop *)
window#show ();
GMain.Main.main ()
关于user-interface - OCaml+LablGTK2 : Multi-Line Text Box,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16283984/