我有这样的菜单情况:
int menu_create(Ihandle *menu)
{
hamburger = IupItem("&Hamburger", "hamburger");
IupSetAttributes(hamburger, "AUTOTOGGLE=YES, RADIO=YES");
char* ce = "Ćev&apčići";
cevapcici = IupItem(utf8_to_cp1250(ce), "cevapcici");
IupSetAttributes(cevapcici, "AUTOTOGGLE=YES, RADIO=YES");
exit = IupItem("Exit\tAlt+F4", "exit");
img4 = IupLoadImage("icons\\delete_16x16.ico");
IupSetAttributeHandle(exit, "TITLEIMAGE", img4);
menu = IupMenu(
IupSubmenu("File",
IupMenu(
hamburger,
cevapcici,
IupSeparator(),
IupItem("Carro&t", "carrot"),
IupSeparator(),
exit,
NULL)),
NULL);
IupSetFunction("exit", (Icallback)mnu_exit);
... etc...
IupSetHandle("menu", menu);
return IUP_DEFAULT;
}
如何使用汉堡包和 cevapcici 项目获得“无线电切换组”功能,因此首先关闭第二个复选标记并相反。这是我的尝试,但它不起作用。
2)我在我的 Windows 7 上尝试 IUP 套件中的 webbrowser 示例。问题是在调整大小(增加)期间出现糟糕的黑色闪烁。此外,浏览器的背景在显示过程中会闪烁黑色。我在 Ubuntu 上尝试了相同的示例,并且也出现了闪烁,但由于背景为白色,因此不太明显。这里有什么方法可以摆脱那些闪烁,或者如果不是在 Windows 上获得 webbrowser 窗口的白色背景?
3) 由于 webbrowser 是 ole 对象(在 Windows 上),是否可以通过 IUP 句柄的引用或像我们以前从 MS 编程工具中所做的任何其他方式使用说“打印预览”或“缩放”功能?
wbInstance.ExecWB(Exec.OLECMDID_OPTICAL_ZOOM, ExecOpt.OLECMDEXECOPT_DONTPROMPTUSER, 150, DBNull.Value)
4) 我怎样才能从 IupTree 触发 key_up 事件?
5) IupTabs 的有趣情况:
frame3 = IupHbox(mat, val, NULL);
vboxt1 = IupVbox(frame3, NULL);
vboxt2 = IupVbox(frame3, NULL);
IupSetAttribute(vboxt1, "TABTITLE", "First documents... ");
IupSetAttribute(vboxt2, "TABTITLE", "Second documents... ");
tabs = IupTabs(vboxt1, vboxt2, NULL);
hbox1 = IupHbox(tabs, IupVbox(frame, tree, frame2, NULL), NULL);
dlg = IupDialog(hbox1);
当我设置两个选项卡应该相同的 frame3 时,我的 GUI 冻结了。但是,我必须在两个选项卡中获得相同的“垫子”(IupMatrix),因为通过更改选项卡,矩阵中的其他数据加载但足够相似以使用相同的矩阵和相关函数。
在这里做什么?