niedziela, 2 marca 2025

class info_Printers - C++ Builder



#ifndef pprinters1H
#define pprinters1H
//---------------------------------------------------------------------------

class info_Printers
{
private:
wchar_t name_Printer[128];
wchar_t driver[1024];
wchar_t port[1024];
unsigned int mode;
TListBox* list_Box;
public:
info_Printers(TListBox* l_Box);
void write_Printers();
};


#endif


#pragma hdrstop

#include "pprinters1.h"
#include <Printers.hpp>

//---------------------------------------------------------------------------
#pragma package(smart_init)
info_Printers::info_Printers(TListBox* l_Box)
{
Printer()->GetPrinter(name_Printer,driver,port,mode);
list_Box=l_Box;
list_Box->Items->Clear();

}
void info_Printers::write_Printers()
{
list_Box->Items->Add("All printers: \n");
list_Box->Items->AddStrings(Printer()->Printers);
list_Box->Items->Add("Default printer:");
        list_Box->Items->Add(UnicodeString(name_Printer));
}


void __fastcall TForm1::Button1Click(TObject *Sender)
{
 info_Printers my_Printers(ListBox1);
 my_Printers.write_Printers();
}