Spausdinkite bet kokio tipo dokumentus naudodami „Delphi“

Jei tavo Delfi Programa turi veikti su įvairių tipų failais, viena iš užduočių, kurios gali tekti jūsų programai, yra leisti programos vartotojui spausdinti failą, kad ir koks failo tipas būtų.

Dauguma į dokumentus orientuotų programų, tokių kaip „MS Word“, „MS Excel“ ar „Adobe“, gali lengvai atsispausdinti toje programoje sukurtus dokumentus. Pavyzdžiui, „Microsoft“ „Word“ išsaugo jūsų parašytą tekstą dokumentuose su DOC plėtiniu. Kadangi „Word“ nustato, koks yra „neapdorotas“ .DOC failo turinys, jis žino, kaip spausdinti .DOC failus. Tas pats pasakytina apie bet kurį „žinomą“ failo tipą, kuriame yra spausdinama informacija.

Ką daryti, jei iš savo programos reikia spausdinti įvairių tipų dokumentus / failus? Ar galite žinoti, kaip nusiųsti failą į spausdintuvą, kad jis būtų tinkamai atspausdintas?

Spausdinimas iš „Delphi“

Mes galime paklausti „Windows“, kokia programa gali atspausdinti, pavyzdžiui, PDF failą. Arba, dar geriau, mes galime nurodyti „Windows“, kad yra vienas PDF failas, nusiųsti jį programai, atsakingai už PDF failų spausdinimą.

instagram viewer

Norėdami tai padaryti, atidarykite „Windows Explorer“, eikite į katalogą, kuriame yra keletas spausdinamų failų. Kai naudojate daugumą failų, esančių jūsų sistemoje, dešiniuoju pelės mygtuku spustelėdami failą „Windows Explorer“, surasite komandą „Spausdinti“. Vykdydami komandą Spausdinti apvalkalą, failas bus nusiųstas į numatytąjį spausdintuvą. Na, tai yra būtent tai, ko mes norime: jei norite failo tipo, paskambinkite metodu, kuris atsiųs failą susijusiai programai spausdinti. Funkcija, kurios mes laukiame, yra „ShellExecute“ API funkcija.

„ShellExecute“: Spausdinti / spausdinti

Tačiau „ShellExecute“ gali nuveikti kur kas daugiau. Galima naudoti „ShellExecute“ paleiskite programą, atidarykite „Windows Explorer“, pradėkite paiešką nurodytame kataloge ir, kas mus labiausiai domina, atsispausdinkite nurodytą failą.

Nurodykite spausdintuvą

Naudojant aukščiau nurodytą skambutį, C disko šaknyje esantis dokumentas „document.doc“ bus nusiųstas į „Windows“ numatytąjį spausdintuvą. „ShellExecute“ veiksmui „spausdinti“ visada naudoja numatytąjį spausdintuvą. Ką daryti, jei reikia spausdinti kitu spausdintuvu, o kas, jei norite leisti vartotojui pakeisti spausdintuvą?

„PrintTo“ apvalkalo komanda

Prieš kopijuodami ir įklijuodami: visose „Delphi“ programose esamas spausdintuvo visuotinis kintamasis (TPrinter tipas) gali būti naudojamas bet kokiam programos spausdinimui valdyti. Spausdintuvas yra apibrėžtas skyriuje „spausdintuvai“, o „ShellExecute“ - skydelyje „shellapi“.

  1. Išmeskite „TComboBox“ ant formos. Pavadink tai „cboPrinter“. Nustatykite stilių į csDropDownLidt
  2. Įdėkite kitas dvi eilutes į formos „OnCreate“ lygųjį tvarkyklę:
    // kombinuotame laukelyje yra galimi spausdintuvai„cboPrinter“. Daiktai. Priskirti (spausdintuvas. Spausdintuvai);// iš anksto pasirinkite numatytąjį / aktyvųjį spausdintuvą„cboPrinter“. „ItemIndex“: = spausdintuvas. „PrinterIndex“;
naudoti bet kokio tipo dokumentui spausdinti į nurodytą spausdintuvą

Pastaba: kai kurie dokumentų tipai neturi su spausdinimu susijusios programos. Kai kuriuose nėra nurodytas veiksmas „printto“.

instagram story viewer