![]() |
【转帖】how to use exgsgdivectorizedevice
how to use exgsgdivectorizedevice
how to use exgsgdivectorizedevice i declare in .cpp as below odrx_declare_static_module_entry_point(wingdimodul e); odrx_begin_static_module_map() odrx_define_static_appmodule(l"wingdi.gs",wingdimo dule) odrx_end_static_module_map() cchildview inherit from odgicontextfordbdatabase then in a init function to init the device (the pdatabase is exist) bool cchildview::init() { bool ret=false; if (!database()) { setdatabase(pdatabase); enablegsmodel(true); odgsmoduleptr pgs = :drxdynamiclinker()->loadmodule(dd_t("wingdi.gs")); m_pdevice = pgs->createdevice(); } if(database() && !m_pdevice.isnull()) { m_pdevice = oddbgsmanager::setupactivelayoutviews(m_pdevice, this); ret=true; } return ret; } then update the screen void cchileview::onpaint() { cpaintdc dc(this); // device context for painting crect rect; getclientrect(&rect); odgsdcrect outputrect(odgsdcpoint(rect.left,rect.bottom), odgsdcpoint(rect.right,rect.top)); m_pdevice->onsize(outputrect); odrxdictionaryptr pproperties = m_pdevice->properties(); if (!pproperties.isnull()) { pproperties->putat("windowhdc", odrxvariantvalue(oduint32(dc.getsafehdc()))); m_pdevice->update(); } } then crash in m_pdevice->update();,i can't find any sample that use exgsgdivectorizedevice,what's wrong ? hello yashu, i'm not sure this will help you, but i ran into a similar problem. it appears you have never specified a palette. give it a shot and see how it works out. nuzzi |
所有的时间均为北京时间。 现在的时间是 02:00 AM. |