Forum: PC-Programmierung In IUP ein Bild anzeigen


von Marcel (Gast)


Lesenswert?

Hi,

ich versuche gerade in IUP ein Bild anzuzeigen. Dafür benutze ich den 
folgenden Beispielcode:

require 'imlua'

local image = 
im.FileImageLoad('/home/marcel/Desktop/chdk/329/trunk_org/bild.jpg') -- 
directly load the image at index 0. it will open and close the file
local cv = iup.canvas{rastersize = image:Width().."x"..image:Height(), 
border = "NO"}
cv.im_image = image

function cv:map_cb()       -- the CD canvas can only be created when the 
IUP canvas is mapped
   self.cd_canvas = cd.CreateCanvas(cd.IUP, self)
end

function cv:action()          -- called everytime the IUP canvas needs 
to be repainted
   cd.Activate(self.cd_canvas)
   cd.Clear()
   self.im_image:cdPutImageRect(0, 0, 0, 0, 0, 0, 0, 0) -- use default 
values
end

dlg = iup.dialog{cv}

function dlg:close_cb()      -- just an example
   local cv = dlg[1]
   im.ImageDestroy(cv.im_image)
   cd.KillCanvas(cv.cd_canvas)
   dlg:destroy()
   return iup.IGNORE -- because we destroy the dialog
end

dlg:show()


Beim Ausführen erscheint aber lediglich eine Fehlermeldung:

attempt to call method 'cdPutImageRect' (a nil value)

Meine Suche nach diesem Problem brachte mich auf die folgende Seite:

http://lists.luaforge.net/pipermail/iup-users/2007-December/000205.html

Da steht nun, das die Methode in der letzten Version unbenannt wurde. 
Ich weiß allerdings nicht wie, und eine Doku o.Ä. habe ich bisher nicht 
finden können. Weiß da wer weiter?

von heinz (Gast)


Lesenswert?


Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.