Tisk   otázka

VB6/VBA

Dobrý den.

Tak mám na Vás zase jednu tiskovou otázku..

Tisknu pomocí této funkce:WebBrowser1.ExecWB OLECMDID_PRINTPREVIEW, OLECMDEXECOPT_PROMPTUSER

Přiznám se, že té syntaxi vůbec nerozumím - co je to, co je napsané velkými písmeny? To jsou nějaké parametry příkazu ExecWB? Pak nerozumím tomu, proč nejsou v závorce, jak je obvyklé. Jde mi o to, že bych potřeboval nějaký seznam těchto "parametrů", protože pak určitě budu mít větší možnosti nastavení tisku. Jelikož nevím, co to je, tak to těžko můžu někde hledat, že:)

Můj konkrétní problém tkví v tom, že potřebuji obsah WebBrowseru vytisknout 2x pod sebe s tím, že ten druhý se začne tisknout až od půlky stránky (a ne od konce prvního vytištěného Webbrowseru).

Za jakýkoli nápad nebo odkaz děkuji.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pokud metoda není funkce tak parametry procedury nemusí být v závorce. Klidně ale můžeš napsat ..ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_PROMPTUSER).Co se týká OLECMDEXECOPT_PROMPTUSER je to pojmenovaná konstanta controlu WebBrowser1 (pokud připojíš k projektu webcontrol tak současně si do projektu naimplementuješ seznam těchto konstant.Avšak seznam pro tento control v objekt browseru nenajdeš - naštěstí vše je na MSDN.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Díky za vysvětlení.

Má někdo nápad, jak tisknout od půlky stránky? Jediné řešení, které mě napadá - vytvořit si vlastní proceduru, která bude počítat výšku (v pixelech) již vytištěného textu a podle toho vynechá odpovídající prostor do poloviny stránky.. Asi by to takhle šlo, ale je to dost úchylné, že?:)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Ideální jestli chceš tisknou html tak použít ccs a definovat jeden pro zobrazení a druhý pro tisknutí.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

To můj problém ale asi neřeší.. Pokud vím, tak html jazyk (ani css, javascript apod.) vůbec neumí pracovat s výškou stránky, pouze se šířkou..

nahlásit spamnahlásit spam 0 odpovědětodpovědět

V ccs a zvlášť javacript si můžeš nastavit konkrétně co potřebuješ. Vytvoříš <div> a stanovíš jestli se má zobrazovat nebo jestli je pouze pro tisk a naplníš ho např. tabulkou s automatickou výškou nebo šířkou apod. Pokud znáš ccs tak to zvládneš, pokud ne tak musíš nastudovat nebo zkusit jinou cestu.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Tak už jsem si poradil, možná trošku neprofesionálně:). Mezi ty dva vytištěné WebBrowsery jsem nechal generovat tag <br> a počet těchto tagů je ovlivněn délkou (= výškou) obsahu WebBrowseru. O kolik řádků kratší obsah, o tolik víc <br> se tam pak umístí. Takže v důsledku je pak na papíře první řádek druhého WebBrowseru vždy na stejném místě.

Bohužel se to nedá použít obecně. Pokud by měl např. obsah WB jinou velikost písma na každém řádku, tak to už by bylo o dost komplikovanější..

Panu Kaiserovi děkuji za nápady a já toto téma považuji za vyřešené :)

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback