I'm using InfoPath 2007 with MOSS 2007 however I'm not designing it to be opened in a browser yet so if you are, I'm not certain if this method to create a print button would still work. Also am using C#:
1. In the button properties, click “Edit Form Code” button. In event handler method for your print button click event, add this code:
this.print();
2. In Form Options menu from Tools menu, under Category select Security and Trust.
Under Security Level, check Full Trust (may need to uncheck “Automatically determine security level” first).
In Form Template Signature, click Create Certificate