IUP 3.26引入了一个主题属性:
主题公共属性和DEFAULTTHEME全局属性,用于所有控件同时应用一组属性。
我正在使用IUP3.28,并且遵循(我认为) 文档来标准化各种控件的外观;然而,它并没有像我预期的那样起作用--事实上,它似乎根本不起作用。主题中为每个控件指定的属性没有被应用,因此显然有些地方我误解了。在这个例子中,按钮应该有粉红色的文本,但是它没有。
require "iuplua"
iup.SetGlobal("DLGBGCOLOR","255 255 255") --default background colour
iup.SetGlobal("TXTBGCOLOR", "255,255,255") --default text color
myButtonTheme = iup.user{alignment="ALEFT:ACENTER", expand = "HORIZONTAL",
padding = "20x10", fgcolor = "255 0 255"}
myTheme = iup.user{
IUPBUTTON = myButtonTheme
}
iup.SetGlobal("DEFAULTTHEME", "myTheme") --default settings for iup controls
b = iup.button{title = "This should be pink"}
dlg = iup.dialog{iup.hbox{b}}
dlg:show()
iup.MainLoop()
dlg:destroy()ETA:如果我这样创建按钮:b = iup.button{title = "This should be pink", theme = myButtonTheme},它可以工作;但是如果我依赖DEFAULTHEME,它就不工作了。我有一些由库创建的按钮,我想要一致地主题
发布于 2021-06-27 23:15:57
它错过了呼叫:
iup.SetHandle("myTheme", myTheme)在创建Lua myTheme控件之后。
https://stackoverflow.com/questions/67803879
复制相似问题