myForm = VCL.Form("myForm") myForm._ = {color = VCL.clBlack,left=100, top=100, height=350, width=450, position="poDesktopCenter", caption="Image viewer demo", } myForm.panel = VCL.Panel(myForm,"PB") myForm.panel._ = {align = "alBottom", height=40, caption = "", color = VCL.clSilver} myForm.panel.cb1 = VCL.CheckBox(myForm.panel,"CB1") myForm.panel.cb1._ = {left=10, top=12, caption="Stretch", onclick="setattr"} myForm.panel.cb2 = VCL.CheckBox(myForm.panel,"CB2") myForm.panel.cb2._ = {left=100, top=12, caption="Proportional", onclick="setattr"} myForm.panel.cb3 = VCL.CheckBox(myForm.panel,"CB3") myForm.panel.cb3._ = {left=200, top=12, caption="Transparent", onclick="setattr"} myForm.vImage = VCL.Image(myForm,"MI") myForm.vImage._ = { onclick="onclick", align = "alCLient", center = "true", stretch = "false", proportional = "false", transparent = "false"} myForm.panel.button1 = VCL.SpeedButton(myForm.panel,"SB1") myForm.panel.button1._ = {left=300, top=5, width=100, height=30, caption="", flat="true", Transparent="true", onclick="loadimage"} function loadbuttonimage(button,fname) local bImage = VCL.Image(myForm,"MBI") img_loadimgbuffer(bImage,fname,VCL.clFuchsia) button:Image(bImage) bImage:Free() end function loadimage() local filename = VCL.OpenDlg("", "Load Image",medialib, "Image files|*.jpg;*.bmp;*.png|Jpeg files|*.JPG|Bitmaps|*.BMP|Portable Network Graphics|*.PNG", {"ofFileMustExist"} ) if filename then myForm.vImage:Load(filename) myForm.vImage._ = {hint=filename, showhint="true"} else myForm.vImage.showhint = "false" end end function onclick(Sender) loadimage() end function setattr(Sender) if Sender.name == "CB1" then myForm.vImage.stretch = Sender.checked elseif Sender.name == "CB2" then myForm.vImage.proportional = Sender.checked elseif Sender.name == "CB3" then myForm.vImage.transparent = Sender.checked end end loadbuttonimage(myForm.panel.button1,medialib.."loadimagebutton.bmp")