Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Problem s PolyBezier v MFC

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

RE: Problem s PolyBezier v MFC

Autor: RSTEIN

12:43:08 25.03.2009

Dobry den,
pokud chcete softwarovou klavesnici aktivovat na kazdem textboxu, je nejjednodusssi do zdroju dialogu umistit nevizualni prve SIPRef.

CONTROL "SIP1",IDC_SIP1,"SIPPREF",WS_TABSTOP,24,162,14,14


SIP Control MUSI byt vzdy posledni ve zdrojich a musi byt ve zdrojich dialogu pouze JEDNOU. Mam ale pocit, ze v MFC obcas jsou potize s praci SIPRef...

Takze treba takto vypada definice dialogu.

IDD_GPSSETTINGS DIALOG 0, 0, 156, 177
STYLE DS_SETFONT | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU
CAPTION "Nastavení stahování souradnic BTS"
FONT 8, "MS Shell Dlg"
BEGIN
EDITTEXT TXT_GPSEMAIL,34,7,115,14,ES_AUTOHSCROLL
RTEXT "Email:",LBL_GPSEMAIL,7,7,26,14
EDITTEXT TXT_APPKEY,34,26,115,14,ES_AUTOHSCROLL
RTEXT "KlĂ­ÄŤ:",LBL_APPKEY,7,26,26,14
EDITTEXT TXT_WSURL,34,46,115,14,ES_AUTOHSCROLL
RTEXT "SluĹžba:",LBL_WSURL,7,46,26,14
EDITTEXT TXT_MAP,34,65,115,14,ES_AUTOHSCROLL
RTEXT "Mapa:",LBL_MAP,7,65,26,14
CONTROL "Zobrazovat mapu po spuštění",CHKB_DEFAULTGPSON,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,34,81,111,10
LTEXT "Upozornění: Stahování dat se souřadnicemi BTS a zobrazování mapy můŞe být zpoplatněno dle datovÊho paušálu mobilního operátora!",LBL_APPKEY,7,98,142,33
CONTROL "SIP1",IDC_SIP1,"SIPPREF",WS_TABSTOP,24,162,14,14
END


Aktivovat softwarovou klavesnici samozrejme muzete i v kodu pomoci API SipShowIM.

SipShowIM(SIPF_ON)

A skryt
SipShowIM(SIPF_OFF)

Zdravim
Rene Stein
Senior Software Architect
Net Development, Mobile Development - managed(business applications)/native (drivers, services/navigation software)
http://blog.renestein.net


Příspěvek zaslán emailem

Citovat příspěvek

 

Re: Problem s PolyBezier v MFC

Autor: zacatecniXY

12:03:29 25.03.2009

Dobry den,
dekuji za predchozi odpoved. Mel bych jeste jednu malou zadost o radu (bylo asi zbytecne zakladat nove tema). Hledam nejakou metodu, pomoci ktere zobrazim/aktivuji virtualni klavesnici pda, napr. pri prechodu na dialog, v kterem je umisten editbox, tak aby uzivatel klavesnici nemusel pred psanim klavesnici sam aktivovat. Dekuji.

Citovat příspěvek

 

RE: Problem s PolyBezier v MFC

Autor: RSTEIN

12:56:42 20.03.2009

Dobry den,
Popsany problem neni problemem MFC. Uz samotne API CreatePen, ktere MFC jen zapouzdruje, podporuje pouze styly PS_SOLID, PS_DASH a PS_NULL. To znamena, ze trvate-li na vykreslovani stylem DASHDOT apod., nic jineho nez vlastni vykreslovani vam AFAIK nezbyva.


Zdravim
Rene Stein
Senior Software Architect
Net Development, Mobile Development - managed(business applications)/native (drivers, services/navigation software)
http://blog.renestein.net



Příspěvek zaslán emailem

Citovat příspěvek

 

Re: Problem s PolyBezier v MFC

Autor: zacatecniXY

11:43:31 20.03.2009

Dekuji za odpoved. Seznam metod se dosti hodi. S bézir. krivkou si muzu poradit vypoctem. Ale mam nejakou jinou variantu, jak pouzit styly stetcu PS_DOT,PS_DASHDOT,PS_DASHDOTDOT, ktere take nejsou obsazeny v knihovnach? A chtel bych zustat u tohoto vyvojoveho prostredi a zaroven u MFC. Vykreslovat a propocitavat si je pixel po pixelu, by asi moc efektivni nebylo. Diky za pripadne nasmerovani.

Citovat příspěvek

 

RE: Problem s PolyBezier v MFC

Autor: RSTEIN

19:26:50 19.03.2009

Dobry den,
MFC pro embedded zatizeni nepodporuje vsechny tridy a metody a eVc je pomerne zastarale vyvojove prostredi.
Napr. pro verzi MFC 3.0 CE plati, ze nepodporuje tyto metody (v seznamu je i PolyBezier).

AbortPath GetWindow
AddMetaFileComment GrayString
AngleArc HIMETRICtoDP
Arc HIMETRICtoLP
ArcTo InvertRgn
BeginPath LPtoHIMETRIC
Chord OffsetViewportOrg
CloseFigure OffsetWindowOrg
CreateDC PaintRgn
CreateIC Pie
DrawEscape PlayMetaFile
DrawState PlgBlt
DPtoHIMETRIC PolyBezier
EndPath PolyBezierTo
EnumObjects PolyDraw
Escape PtVisible
ExtFloodFill QueryAbort
FillPath ResetDC
FillRgn ScaleViewportExt
FlattenPath ScaleWindowExt
FloodFill SelectClipPath
FrameRgn SetArcDirection
GetArcDirection SetBoundsRect
GetAspectRatioFilter SetColorAdjustment
GetBoundsRect SetMapMode
GetCharABCWidths SetMapperFlags
GetCharWidth SetMiterLimit
GetColorAdjustment SetPixelV
GetCurrentPalette SetPolyFillMode
GetFontData SetStretchBltMode
GetGlyphOutline SetTextAlign
GetKerningPairs SetTextCharacterExtra
GetMiterLimit SetTextJustification
GetOutlineTextMetrics SetViewportOrg
GetOutputTabbedTextExtent SetViewportExt
GetOutputCharWidth SetWindowOrg
GetPath SetWindowExt
GetPolyFillMode StrokeAndFillPath
GetTabbedTextExtent StrokePath
GetTextAlign TabbedTextOut
GetTextCharacterExtra TextOut
GetROP2 UpdateColors
GetStretchBltMode WidenPath


Zdravim
Rene Stein
Senior Software Architect
Net Development, Mobile Development - managed(business applications)/native (drivers, services/navigation software)
http://blog.renestein.net
Příspěvek zaslán emailem

Citovat příspěvek

 

Problem s PolyBezier v MFC

Autor: XYzacatecnik

18:25:36 19.03.2009

Dobry den,
pracuji ve vyvojovem prostredi eMbedded Visual C++ 4.0 + (sp4) a mam problem s nekterymi metodami z MFC napr. PolyBezier, PolyBerierTo, (popř styly stetcu PS_DOT,PS_DASHDOT,PS_DASHDOTDOT). Funkce dokoncovani kodu mi pritom tyto metody nabidne, ale pri prekladu je hlaseno, ze metody nejsou cleny tridy CDC (v pripade stylu stetcu: prijde varovna hlaska az v aplikaci, ze zdroj neni k dispozici). Bezne pouzivane funkce napr. LineTo, Polygon, Polyline (v pripade stylu stetcu: ps_solid, ps_dash) apod. pouzivam bezne a bez problemu.
V pripade metody PolyBezier: ta ma hlavicku uvedenou v afxwin.h, ale jiz neni v wingdi.h (tak jako napr. LineTo), coz by mohla byt treba stopa. wingdi.h jsem tedy zkousel zaktualizoval, ale beze zmeny. Budu velice vdecny za radu, predem dekuji.

Pro ilustraci:
void CPoCADView::OnDraw(CDC* pDC)
{
CPoint Pt[4] = {CPoint(20, 12), CPoint(88, 246), CPoint(364, 192), CPoint(250,48)};
pDC->PolyBezier(Pt, 4);
}
error C2039: 'PolyBezier' : is not a member of 'CDC'

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: