高分求解windows98下获取打印机纸张大小列表? 我在windows2000中用EnumForms API函数可以获取打印机支持纸张的列表,可这个函数不支持windows98,不知那位兄弟有这方面的经验,98下如何获取打印机纸张列表。不胜感激! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我对这方面也没太大研究一个可行的方案是重载打印对话框,就是建立一个派生于CPrintDialog的对话框,上面放置一个组合框,组合框ID值是 1137,这个组合框里面的数据就是打印纸张的列表了:)一个不像样子的代码,你自己研究吧int ShowPrintDialog(){ // TODO: Add your command handler code here CPrintDialog PD(TRUE); g_pPD=&PD; PD.m_pd.hInstance=AfxGetInstanceHandle(); PD.m_pd.lpSetupTemplateName=MAKEINTRESOURCE(IDD_PLTDLL_PRINTDLG); PD.m_pd.Flags |= PD_ALLPAGES ; PD.m_pd.Flags |= PD_NOPAGENUMS ; PD.m_pd.Flags |= PD_NOSELECTION ; PD.m_pd.Flags |= PD_USEDEVMODECOPIESANDCOLLATE; PD.m_pd.Flags |= PD_ENABLESETUPTEMPLATE; PD.m_pd.Flags |= PD_ENABLESETUPHOOK; PD.m_pd.Flags |= PD_PRINTSETUP; PD.m_pd.lpfnSetupHook=(LPSETUPHOOKPROC)SetupHookProc; PD.GetDefaults(); g_lpDevMode = (LPDEVMODE)::GlobalLock(PD.m_pd.hDevMode); GetPrinterSetup(); GlobalUnlock(g_lpDevMode ); if(PD.DoModal()==IDOK) CListCtrl 设置了某行=0隐藏起来,如何限制鼠标再拖动改行? 求助:请各位大哥帮我看看这个小问题,谢谢! 编程如何设置Button,Static上的字体及颜色 为什么任务管理器中显示的内存只增不减 我在这里添加的是一样的代码,为什么总会出错?? 如何改变 richedit 的拖放特性 有关CDaoDatabase与CDaoRecordset的问题! DCOM的菜鸟问题 请问怎样获得硬盘分区信息及分区本身的信息和... 请问:为什么CArray老出错? 怎样监听系统对文件的操作? ▲▲▲关于消息拦截问题!!▲▲▲
一个可行的方案是重载打印对话框,就是建立一个派生于CPrintDialog的对话框,上面放置一个组合框,组合框ID值是 1137,这个组合框里面的数据就是打印纸张的列表了:)一个不像样子的代码,你自己研究吧int ShowPrintDialog()
{
// TODO: Add your command handler code here
CPrintDialog PD(TRUE);
g_pPD=&PD;
PD.m_pd.hInstance=AfxGetInstanceHandle();
PD.m_pd.lpSetupTemplateName=MAKEINTRESOURCE(IDD_PLTDLL_PRINTDLG); PD.m_pd.Flags |= PD_ALLPAGES ;
PD.m_pd.Flags |= PD_NOPAGENUMS ;
PD.m_pd.Flags |= PD_NOSELECTION ;
PD.m_pd.Flags |= PD_USEDEVMODECOPIESANDCOLLATE;
PD.m_pd.Flags |= PD_ENABLESETUPTEMPLATE;
PD.m_pd.Flags |= PD_ENABLESETUPHOOK;
PD.m_pd.Flags |= PD_PRINTSETUP;
PD.m_pd.lpfnSetupHook=(LPSETUPHOOKPROC)SetupHookProc; PD.GetDefaults();
g_lpDevMode = (LPDEVMODE)::GlobalLock(PD.m_pd.hDevMode);
GetPrinterSetup();
GlobalUnlock(g_lpDevMode ); if(PD.DoModal()==IDOK)