Jak vytisknout oboustranný tisk pomocí automatizace OLE z Visual FoxPro

Překlady článku Překlady článku
ID článku: 194306 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Souhrn

Tento článek popisuje, jak vytisknout oboustranný tisk dokumentu pomocí automatizace OLE z Visual FoxPro do aplikace Word 97 pro Windows.

Další informace

Protože dialogové okno nastaví oboustranný tisk je součástí nastavení tiskárny, není přímé příkaz, který můžete vydat, který způsobuje dokumentu k tisku oboustranný tisk. Existují však tři způsoby pracovat umožňuje vytisknout oboustranný tisk dokumentů.

Tiskárna používá tento test je tiskárna Hewlett-Packard LaserJet, která podporuje oboustranný tisk.

Metoda 1

Odeslat řídicí kód tiskárny, umístí tiskárny duplexní režim pomocí pole PRINT v aplikaci Word. To ukazuje následující kód:
   oWord=CREATEOBJECT("Word.Application")
   WITH oWord
      .Visible=.T.
      .Documents.Add

      .Activewindow.View.ShowFieldCodes=0   && Don't view field codes.
      * Insert PRINT field & Hewlett-Packard escape code for duplex, long-
      * edge binding.
      * It is an ampersand, lower-case L, numeric 1, and upper-case S.
      .Selection.Fields.Add(.Selection.Range,-1,"PRINT 27 &l1S")
      .Selection.Moveright

      .Selection.Insertafter("Page 1")
      .Selection.Moveright

      odlog=oWord.Dialogs(159) && Insert page break w/ Dialogs collection.
      odlog.Execute

      .Selection.Insertafter("Page 2")
      .Selection.Moveright

      .Printout(0)                   && 0 turns off background printing.

      .Application.Quit(0)           && Quit, don't save & don't prompt.
   ENDWITH
				
tento kód nefunguje, pokud dokument aplikace Word obsahuje smíšené orientaci, který je na výšku a na šířku oddílů.

Poznámka: Tento kód pracuje pouze s Service Release-1 (SR-1) pro Word 97. Předchozí verze aplikace Word 97 proveďte není duplexní tisk pomocí tohoto kódu.

Pro dokumentu vytisknout správně jej by neměla obsahovat záhlaví nebo zápatí na každé stránce. Však jej měli tisknout duplexní Pokud je dokument nastavení mít odlišnou první stránku záhlaví nebo zápatí pouze a pole PRINT je vložen první řádek záhlaví, následovaný carriage return.

Metoda 2

Pomocí příkazu SendKeys odesílání klávesových úhozů Word simuluje použití klávesové úhozy k otevření dialogového okna Tisk.
   oWord=CREATEOBJECT("Word.Application")
   WITH oWord
      .Visible=.T.
      .Documents.Add

      * This code creates a two page document to print.
      .Selection.Insertafter("Page 1 - With SendKeys")
      .Selection.Moveright
      odlog=oWord.Dialogs(159) && Insert page break w/ Dialogs collection.
      odlog.Execute
      .Selection.Insertafter("Page 2 - With SendKeys")
      .Selection.Moveright
      * End of document creation.

      .Application.Activate
      .Wordbasic.Sendkeys("%fp%p%d{enter}{tab}{enter}", -1)
      =INKEY(2)   && May need to wait couple seconds before quitting.
      .Application.Quit(0)           && Quit, don't save & don't prompt.
   ENDWITH
				
v příkazu Sendkeys podepsat % představuje přístup Windows nabídek pomocí klávesy ALT. Příkaz INKEY() umožňuje Word zpracovat úhozy před Visual FoxPro for Windows zpracovává konec. To pravděpodobně upraveny nahoru, dolů nebo odstraněny v závislosti na aplikaci.

Použití Sendkeys Word musí být viditelná, není minimalizován, protože úhozy musí přejít aktivní okno. Word mimo obrazovku lze přesunout pomocí příkazu AppMove aby Word nezobrazuje, ale stále zobrazuje dialogové okno. Použití Sendkeys také může být disconcerting, protože nabídkách a dialogových oknech Otevřít a zpracovat jako Pokud byly v aplikaci Word a stisknutí klávesy ALT + S otevřete nabídku Soubor.

Metoda 3

Vytvoření makra Word, která vydává Sendkeys. Pokud makro SendKey název, potom spustit makro z Visual FoxPro pomocí následujícího příkazu:
     oWord=CREATEOBJECT("Word.Application")
       WITH oWord
       .Visible=.T.
       .Documents.Add
       .Application.Activate
       .Run("SendKey")
       .Application.Quit(0)           && Quit, don't save & don't prompt.
    ENDWITH
				
následuje minimální kód makra Word odeslat klíče pro oboustranný tisk:
   Sub SendKey()
      SendKeys "%fp%p%d{enter}{tab}{enter}"
   End Sub
				
Poznámka pro problémy setkat pomocí PředatKlávesovéÚhozy prosím naleznete v poznámce v metodě 2.

Odkazy

Další informace naleznete v následujících článcích znalostní báze Microsoft Knowledge Base:
135569Kódy escape PCL použití pole PRINT
Další informace o získání Word pro Windows 97 SR 1 klepněte na následující číslo článku databáze Microsoft Knowledge Base:
172475Jak získat a nainstalovat MS Office 97 SR-1
Aplikace jazyka nápovědy

(c) Microsoft Corporation 1998. All Rights Reserved. Příspěvky Dean Christopher, Microsoft Corporation.

Vlastnosti

ID článku: 194306 - Poslední aktualizace: 27. ledna 2005 - Revize: 2.2
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Visual FoxPro 5.0a
  • Microsoft Visual FoxPro 6.0 Professional Edition
Klíčová slova: 
kbmt kbcode kbhowto KB194306 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:194306

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com