husum 0 Report post Posted May 9, 2003 Siiter å jobber med en innleveringsoppgave i MFC. Måtte grunnet en kjip lærer bruke Document/View, som suger. (Kunne vært gjort mye lettere...) Vel uansett. Sitter å sliter med følgende metode: void CBoxDialog::OnOK() { int h=GetDlgItemInt(IDC_EDIT_BOX_HOYDE); int w=GetDlgItemInt(IDC_EDIT_BOX_BREDDE); int d=GetDlgItemInt(IDC_EDIT_BOX_DYBDE); double height = (double)h; double width = (double)w; double depth = (double)d; CWnd* pWnd =AfxGetMainWnd(); CDC* pDC = pWnd->GetDC(); Box myBox; myBox.setValues(height, width, depth); CString str1, str2, str3, str4, str5, str6; str1.Format("Box"); str2.Format("Height: %.2f",height); str3.Format("Width: %.2f",width); str4.Format("Depth: %.2f",depth); str5.Format("Volume: %.2f",myBox.findVolume()); str6.Format("Surface: %.2f",myBox.findArea()); pDC.TextOut(10,20,str1); pDC.TextOut(10,40,str2); pDC.TextOut(10,60,str3); pDC.TextOut(10,80,str4); pDC.TextOut(10,100,str5); pDC.TextOut(10,120,str6); CDialog::OnOK(); } og får konstant samme feilmelding når jeg prøver å kompilere: error C2228: left of '.TextOutA' must have class/struct/union type pDC, skal være device context'en som er i hovedvinduet, tror jeg har den rett. Når jeg frovde standard dc'en (CClientDC dc(this) så kom strengene delvis opp rund omkring i dialogen. Vil ha dem i hovedvinduet. Begynner å bli noe lei. Noen som som kan se en løsning på problemet mitt? Quote Share this post Link to post
Paull 39 Report post Posted May 9, 2003 pDC er en peker, så du må bytte ut alle "pDC.TextOut" med pDC->TextOut", det fikser kompileringsfeilen (skulle jeg tro).. Quote Share this post Link to post
husum 0 Report post Posted May 9, 2003 Paull: Takker, det gjorde susen. Skjønner ikke hvorfor jeg ikke tenkte på det. Har sitti noen timer å skrivd kode og debugget. Må trolig ha sett meg blind. :oops: Quote Share this post Link to post