Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [VB.NET/2010] printform automatico

    Buonasera a tutti.
    Vorrei fare in modo di aprire alcuni Forms, uno alla volta, e lanciarne in automatico la stampa mediante il componente PrintForm dopo averne modificato alcune parti via codice.
    In pratica, da FOrm1 lancio Form2 tramite FOrm2.show(); Form2 con l'evento Load modifica secondo parametri assegnati alcune label.text, alcuni Radiobutton e altre cosucce, dopodiche' automaticamente dovrebbe partire il print (nel frattempo si apre anche una finestra con una progressBar). Alla fine si chiude Form2, il focus torna a Form1 che lancia altre routines simili.

    Il tutto funziona egregiamente lanciando la stampa con l'evento click di un bottone su Form2, mentre invece, per la mia pochezza di conoscenze, non riesco a trovare un evento del Form che faccia partire la stampa direttamente da codice. Ho provato a istanziare PrintForm con l'evento Load, con l'evento Enter, con l'evento Shown del form, ottenendo al piu' una stampa parziale, in genere costituita dai soli bordi dei controlli del Form2. Anche il metodo performClick del bottone dedicato alla stampa non da' esito positivo.

    In sostanza mi sarebbe sufficiente trovare un evento del form il cui Handle si attivi appena il form stesso è completamente disegnato su schermo, ma non conoscendo l'esatta sequenza temporale di tutti gli eventi, non riesco a venirne a capo.

    Qualcuno puo' aiutarmi? probabilmente si tratta di un problema estremamente semplice, per me si sta rivelando invece ostico a dir poco.
    Grazie in anticipo

  2. #2
    Di che linguaggio stiamo parlando?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Quote Originariamente inviata da MItaly Visualizza il messaggio
    Di che linguaggio stiamo parlando?
    Scusate, mi sono accorto solo dopo della necessita' di indicare nel titolo il linguaggio...
    siamo su VB 2010.

  4. #4
    Rieccomi solo per dire che ho risolto. La questione era solo di timing, qualche decina di millisecondi perche' il draw del form a video fosse completato. E' bastato inserire un timer adeguato e far partire il printForm dall'evento Tick del timer stesso.

    Saluti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.