VC我不会,有人编译了份程序,我想把显示出的点变成一条直线或者用贴图代替,求才哥/才女帮帮小弟!

我第一次用百度,有25分,全给了!!(只是百度只让给20)很需要解决,谢谢大家!!下面是程序,受字数限制贴了认为可能需要修改的地方,达人们看看怎么改可以实现,还需要在别的... 我第一次用百度,有25分,全给了!!(只是百度只让给20)很需要解决,谢谢大家!!
下面是程序,受字数限制贴了认为可能需要修改的地方,达人们看看怎么改可以实现,还需要在别的方面修改些什么。。

// If you add a minimize button to your dialog, you will need the code below
// to draw the icon. For MFC applications using the document/view model,
// this is automatically done for you by the framework.

void CRTISIMMFCDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CWnd* pDWnd=(CWnd*)GetDlgItem(IDC_STATIC_DATA);
pDWnd->Invalidate();
pDWnd->UpdateWindow();
//draw position/////////////////
CRect rect;
CDC* pDC=pDWnd->GetDC();
pDWnd->GetClientRect(&rect);
CBrush m_b(RGB(0,0,0));
pDC->FillRect(&rect,&m_b);
for(int i=0;i<m_fedCount;i++)
{
if(fedFriends[i].color==1)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(255,0,0));
else if(fedFriends[i].color==2)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(0,255,0));
else if(fedFriends[i].color==3)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(0,0,255));
else if(fedFriends[i].color==4)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(255,255,0));
}
//draw position end ////////////
CDialog::OnPaint();
}
}

// The system calls this to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CRTISIMMFCDlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}

void CRTISIMMFCDlg::OnButtonCreate()
{
// TODO: Add your control notification handler code here
try
{
//调用RTI中创建联盟的函数,第一个参数为所创建联盟的名字
//第二个参数为使用的fed文件的名称
rtiAmb.createFederationExecution(fedExecName, "RTISIMMFC.fed" );
}
catch (RTI::Exception &e)
{
AfxMessageBox(e._name);
}
}
展开
 我来答
tanarri
2008-06-14 · TA获得超过1.1万个赞
知道大有可为答主
回答量:5123
采纳率:33%
帮助的人:8143万
展开全部
我第一次用百度,有25分,全给了!!(只是百度只让给20)很需要解决,谢谢大家!!
下面是程序,受字数限制贴了认为可能需要修改的地方,达人们看看怎么改可以实现,还需要在别的方面修改些什么。。

// If you add a minimize button to your dialog, you will need the code below
// to draw the icon. For MFC applications using the document/view model,
// this is automatically done for you by the framework.

void CRTISIMMFCDlg::OnPaint()
{
if (IsIconic())
{
CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON);
int cyIcon = GetSystemMetrics(SM_CYICON);
CRect rect;
GetClientRect(&rect);
int x = (rect.Width() - cxIcon + 1) / 2;
int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon
dc.DrawIcon(x, y, m_hIcon);
}
else
{
CWnd* pDWnd=(CWnd*)GetDlgItem(IDC_STATIC_DATA);
pDWnd->Invalidate();
pDWnd->UpdateWindow();
//draw position/////////////////
CRect rect;
CDC* pDC=pDWnd->GetDC();
pDWnd->GetClientRect(&rect);
CBrush m_b(RGB(0,0,0));
pDC->FillRect(&rect,&m_b);
for(int i=0;i<m_fedCount;i++)
{
if(fedFriends[i].color==1)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(255,0,0));
else if(fedFriends[i].color==2)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(0,255,0));
else if(fedFriends[i].color==3)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(0,0,255));
else if(fedFriends[i].color==4)
pDC->SetPixel(fedFriends[i].x,fedFriends[i].y,RGB(255,255,0));
}
这里的setpixel就是画点的,lineto是画线的,不过不知道你要画什么样的线
//draw position end ////////////
CDialog::OnPaint();
}
}

// The system calls this to obtain the cursor to display while the user drags
// the minimized window.
HCURSOR CRTISIMMFCDlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式