1、为界面添加一个List Control控件。\x0d\2、更改这个控件的view属性为Report\x0d\3、为这个控件添加一个控制型变量 假设为m_ctlList;\x0d\4、在界面的初始化函数OnInitDialog()函数中初始化这个控件主要是插入列表的头,主要调用\x0d\int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT_LEFT, int nWidth = -1, int nSubItem = -1 );这个函数。\x0d\其中 nCol是列的索引,从0开始 ;lpszColumnHeading 列的名称 ;nFormat 文字的摆放方式;nWidth 宽的度度。\x0d\如:\x0d\m_ctlListInsertColumn(0,"姓名",LVCFMT_CENTER,60);//第一列,名称为姓名,文字居中显示,列的宽度为60像素\x0d\m_ctlListInsertColumn(1,"性别",LVCFMT_CENTER,60);//第二列,名称为性别,文字居中显示,列的宽度为60像素\x0d\\x0d\5在界面中添加一个“添加按钮”,在按钮的响应函数中向列表控件m_ctlList插入数据主要代码如下。\x0d\ UpdateData(TRUE);//将界面的数据更新到对应的变量中\x0d\int count=m_ctlListGetItemCount();//获取当前存在的数据总量\x0d\m_ctlListInsertItem(count,"张三");//插入一行\x0d\m_ctlListSetItemText(count,1,"男");//改变列2的显示文字
没有打印机,给你段代码做参考吧。我觉得把dcPrinterTextOut(50, 50, _T("Hello World!"), 12);这句换成你的dcStretchBlt(0,
0,
(int)(rcWidth()ratex),
(int)(rcHeight()ratey),
pDC,
0,
0,
rcWidth(),
rcHeight(),
SRCCOPY
);大约就可以了。
void CDCView::DoStartDoc()
{
// get the default printer
CPrintDialog dlg(FALSE);
dlgGetDefaults();
// is a default printer set up
HDC hdcPrinter = dlgGetPrinterDC();
if (hdcPrinter == NULL)
{
MessageBox(_T("Buy a printer!"));
}
else
{
// create a CDC and attach it to the default printer
CDC dcPrinter;
dcPrinterAttach(hdcPrinter);
// call StartDoc() to begin printing
DOCINFO docinfo;
memset(&docinfo, 0, sizeof(docinfo));
docinfocbSize = sizeof(docinfo);
docinfolpszDocName = _T("CDC::StartDoc() Code Fragment");
// if it fails, complain and exit gracefully
if (dcPrinterStartDoc(&docinfo) < 0)
{
MessageBox(_T("Printer wouldn't initalize"));
}
else
{
// start a page
if (dcPrinterStartPage() < 0)
{
MessageBox(_T("Could not start page"));
dcPrinterAbortDoc();
}
else
{
// actually do some printing
CGdiObject pOldFont = dcPrinterSelectStockObject(SYSTEM_FONT);
dcPrinterTextOut(50, 50, _T("Hello World!"), 12);
dcPrinterEndPage();
dcPrinterEndDoc();
dcPrinterSelectObject(pOldFont);
}
}
}
}
直接用:
BITMAP bmp;
bmpIamgeGetBitmap(&bmp);
int nWidth = bmpbmWidth;
int nHeight = bmpbmHeight;
首先要知道这个控件的ID,通过ID来访问控件
要想获得控件上的文本,可以用GetDlgItemText这个函数
函数原型是int GetDlgItemText( int nID, CString& rString ) const;
第一个参数是控件的ID,第二个参数是用来接收控件文本的字符串(CString类型的)
OnCreate()函数是在系统帮我们创建好窗口后,但还没显示时调用的。这样当窗口显示在我们面前时。Vega Prime的初始化、加载ACF文件的任务也全完成了。在最后设置了一个100ms的定时器,这定时器主要是用来实现帧循环的,此处的100ms决定了仿真时的帧速率。为了得到更好的仿真效果,可以将定时器设置的更小一些,此外,帧速率还要由其它的因素决定。
TextOut输出的东西,你是不可能在窗口显示后再获取文字的,因为输出后的是,不是文本。
因此,如果TextOut的东西需要记录,你只能在输出前记录好输出的文本和位置,而不是在输出后再试图去获取。
我发现你的自信心都快爆棚了,呵呵
程序出错,首先得从自身找原因
你可以想一下,你的对话框窗口都没有创建,相当于这个东西还不存在,你怎么能从里面取得东西呢?
还有就是如果你是想在对话框中显示文字,应该首先调用DoModal()显示出来对话,然后在对话框类的OnPaint()函数中用TextOut()显示文字,如果你想实时刷新,可以采用定时器的方式OnTimer
以上就是关于mfc如何将编辑框的内容读取到列表控件中全部的内容,包括:mfc如何将编辑框的内容读取到列表控件中、MFC如何打印picture的内容。、在MFC中如何获得一个CBitmap的宽和高等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)