我想知道是否可以在GUI中发送图像,但将路径另存为事实存储在数据库中。而不是使用
resource(logo,image,image('logo.jpg')).
是否可以在('logo.jpg')
内调用一个变量,该变量将根据被调用的事实而改变?。
答案 0 :(得分:1)
我可以给您的更好的提示是学习使用XPCE实时文档。 从swipl-win打开菜单
\ Help \ XPCE (GUI) manual...
从那里(标题为XPCE Manual
的小窗口)打开菜单\ File \ Demo Programs
然后从提议的列表中单击Image viewer
。单击按钮[ Source ]
,然后在文件底部找到您要查找的代码示例。
一些DRY可以将其变成可重用的组件。 例如:
/* File: pce_image_view.pl
Author: Carlo,,,
Created: May 19 2019
Purpose: answer https://stackoverflow.com/q/56201622/874024
*/
:- module(pce_image_view, [pce_image_view/1]).
:- use_module(library(pce)).
pce_image_view(Filename) :-
new(I, image(Filename)),
!,
new(B, bitmap(I)),
new(P, picture),
send(P, display, B),
send(P, open).
保存文件,查询并调用:
?- pce_image_view('/home/carlo/Pictures/prova1.jpg').
true.
很抱歉,然后是演示程序-这是一个相当完整的本地文件类型的浏览器-似乎无法立即使用。无论如何,可以使用最近的语言开发提供的一些更高级别的构造来使API更舒适。