1

我正在尝试使用 lablTk 在 Linux 下的 OCaml 应用程序中构建 GUI。我想选择一个目录;Tk 有一个chooseDirectory为此调用的函数,但 lablTk 没有此函数。如何从标准对话框中选择目录?Tk 8.4 支持这个功能,我希望 OCaml 可以使用它。

实际上,关于 lablTk 的 Tk 模块的文档很少。我从这个文档中看到Tk 模块中有getOpenFile和之类的功能,但没有.getSaveFilechooseDirectory

  1. 如何在 Tk 模块中查看 lablTk 导出的函数?/usr/lib/ocaml/labltk/ 中没有 tk.mli 文件。是不是意味着 Tk 模块的 C 端直接绑定到 等函数getOpenFile,而不经过 OCaml 模块?
  2. 如果 Tk 模块可以直接绑定这些函数,也许我可以做一点工作,直接调用一个不包含在 lablTk 中的 Tk 函数,比如chooseDirectory?是否可以通过以某种方式将其声明为“外部”来调用此函数(如何?),还是我需要做更多的工作?我会考虑在 C 中编写一个小包装器,以便我可以调用除了 lablTk 中可用的函数之外的更多 Tk 函数,如果这可能并且不是很耗时的话;还是我必须修改lablTk的源代码,重新编译并安装lablTk的自定义版本,这样我才能使用更多的Tk功能?如果是这样,我如何使用这些更改重新编译 lablTk,我应该记住什么?(我在哪里可以看到文档?)
4

0 回答 0