Hogyan szerezzük be az aktuális nyomtatóbeállításokat mfc-ben - mindent ehhez és programozáshoz

Az egyetlen módja, hogy hozzáférjen az aktuális nyomtató beállításait keresztül m_hDevMode szerkezete és m_hDevNames tárolt CWinApp. Ezek a kifejezések érhetők PRINTDLG szerkezetet mutató, amely átadódik egy tag függvény GetPrinterDeviceDefaults () osztály örökölt CWinApp. Mivel a visszatérési értékek és hDevMode hDevNames HGLOBAL változó, akkor annak érdekében, hogy visszatérjen egy mutatót a struktúra kell hívni. GlobalLock (). Ezzel a mutató használatával kivonhatja az információkat a struktúrából, hogy meghatározza a nyomtató aktuális állapotát. További részleteket a tartalmát ezeket a struktúrákat lehet megtekinteni DEVMODE és DEVNAMES a segítségével SDK.

Az alábbi példa egy tag függvény egy osztály, örökölt CView, ami visszaadja az aktuális méret a nyomtató oldal használatával GetDeviceCaps () a CDC helyén létrehozott, a nyomtató beállításait:

Mintakód

A következő példa bemutatja, hogyan kell használni a funkciót EnumJobs JOB_INFO szerkezete és hogyan kell használni a funkciót GetPrinter PRINTER_INFO szerkezete: példa BOOL GetJobs (fogantyú hPrinter, / * nyomtató leíró * / JOB_INFO_2 ** ppJobInfo, / * Pointer, hogy ..

Ez az API funkciókészlet Win32 spooler elsősorban a struktúrák tömbjének kitöltésével foglalkozik. Azonban a struktúrák jellemzően vonalakra vagy egyéb adatokra utalnak. Ezeket az idegen adatokat szintén a visszatért memóriában kell tárolni, a tömb végére kerülnek.

Néha meg kell szüntetni a meghajtót, hogy adatokat küldjön közvetlenül a nyomtatónak. A következő példa bemutatja, hogyan kell ezt elvégezni mind a helyi nyomtatóhoz, mind a hálózati nyomtatóhoz. Ez a módszer helyettesítheti a PASSTHROUGH szekvenciát, valamint a SpoolFile módszert. // Funkció RawDataToPrinter - küldés.

A Windows Software Development Kit (SDK) nem nyújt funkciót a nyomtatási élek közvetlen kiszámításához. Az alkalmazás kiszámíthatja ezeket az adatokat a GetDeviceCaps () segítségével. Ez a cikk ezeket a funkciókat tárgyalja, valamint kódrészleteket ábrázol. Az alkalmazás képes.

A cikk megmagyarázza, hogyan módosíthatja a szabványos nyomtatási párbeszédablakot, és felhasználhatja az MFC alkalmazásban. A nyomtatási párbeszédablak beállítása a szabványos Ablaknyomtatási párbeszédablak sablonjának módosításával jár, miközben új vezérlőket adhat hozzá és / vagy törölheti azokat. Szóval, tovább.

Kapcsolódó cikkek