簡體   English   中英

我想在 MFC 基於對話框的對話框中顯示一些內容,但它在我的主對話框中沒有顯示任何內容!

[英]I want to display something in a dialog in MFC Dialog-Based but it doesnt display anything in my main dialog !

這是我在對話框中顯示某些內容的代碼,我將它們放在 OnPaint() 中,但是當我構建它時,我的主對話框中沒有任何內容。 如果有人能告訴我代碼錯誤,我真的很感激。

CmyDlg::OnPaint()
{

  CPaintDC dc(this); // device context for painting

  // TODO: Add your message handler code here
  dc.MoveTo ( 10, 10 ) ;
  dc.LineTo ( 200, 10 ) ;

  CPen mypen ( PS_SOLID, 3, RGB( 0, 0, 255)) ;
  CPen *oldpen = dc.SelectObject ( &mypen ) ;
  dc.Rectangle ( 10, 20, 200, 100 ) ;
  dc.SelectObject ( oldpen ) ;

  mypen.DeleteObject( ) ;
  mypen.CreatePen ( PS_DOT, 1, RGB ( 0, 0, 255));
  oldpen = dc.SelectObject ( &mypen ) ;
  CBrush mybrush ( RGB( 255,0,0)) ;
  CBrush *oldbrush = dc.SelectObject ( &mybrush ) ;
  dc.RoundRect ( 10, 120, 200, 220, 20, 20 ) ;
  dc.SelectObject ( oldbrush ) ;
  dc.SelectObject ( oldpen ) ;

  mypen.DeleteObject( ) ;
  mypen.CreatePen ( PS_DASH, 1, RGB(0,0,255)) ;
  oldpen = dc.SelectObject ( &mypen ) ;
  mybrush.DeleteObject( ) ;
  mybrush.CreateHatchBrush ( HS_CROSS, RGB ( 255, 0, 255 ) ) ;
  oldbrush = dc.SelectObject ( &mybrush ) ;
  dc.Ellipse ( 10, 240, 200, 340 ) ;
  dc.SelectObject ( oldbrush ) ;
  dc.SelectObject ( oldpen ) ;

  mypen.DeleteObject( ) ;
  mypen.CreatePen ( PS_DOT, 1, RGB (0, 0, 255)) ;
  oldpen = dc.SelectObject ( &mypen ) ;
  CBitmap mybitmap ;
  mybitmap.LoadBitmap ( IDB_BITMAP1 ) ;
  mybrush.DeleteObject( ) ;
  mybrush.CreatePatternBrush ( &mybitmap ) ;
  oldbrush = dc.SelectObject ( &mybrush ) ;
  dc.Pie ( 250, 10, 350, 110, 350, 110, 350, 10 ) ;

  oldpen = ( CPen* ) dc.SelectStockObject ( WHITE_PEN ) ;
  oldbrush = ( CBrush* ) dc.SelectStockObject ( NULL_BRUSH ) ;

  POINT pt[5] = { 250, 150, 250, 300, 300, 350, 400, 300, 320, 190 } ;  
  dc.Polygon ( pt, 5 ) ;
  dc.SelectObject ( oldpen ) ;
  dc.SelectObject ( oldbrush ) ;

  CRect r ;
  GetClientRect ( &r ) ;
  dc.TextOut ( 100, 200, "Raindrops on roses & whiskers on kittens", strlen ( "Raindrop on roses & whiskers on kittens" ) ) ;
  dc.DrawText ( "Of Words'n Figures", -1, &r, DT_SINGLELINE | DT_VCENTER | DT_CENTER ) ;

將 ON_WM_PAINT() 添加到您的消息 map。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM