|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Oct 2008
Messaggi: 27
|
[VB.NET] Applicanzione contenente finestra word
Ciao, in un pannello della mia applicatione dovrei iserire un finestra word, sapete come si fa? Esiste un elemento in VB.NET che corrisponde ad esso?
Grazie Ciao! |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Il metodo forse più semplice in assoluto è il controllo WebBrowser, che può aprire un buon numero di documenti di vari formati, purchè ovviamente la relativa applicazione sia installata sul PC che esegue il programma :
Codice:
WebBrowser1.Navigate("C:\Test.doc") |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: Oct 2008
Messaggi: 27
|
Questo metodo lo conosco. Il probrlema é che in questo modo l'applicazione word che si apre all'interno del browser é limitata, per esempio manca il meno e altre toolbar che io avrei bisogno.
Ho trovato la possibilità di far partire un istanza di word in questo modo: Codice:
Dim winWord As New Microsoft.Office.Interop.Word.Application() WinWord.Visible = True Non sapete come si fa? |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Dec 2004
Messaggi: 3210
|
Ci sono diversi metodi per farlo, ma avrai bisogno di fare riferimento diretto ad alcune librerie API, ad esempio in questo modo :
> Dichiarazioni API necessarie : Codice:
Private Const WM_SYSCOMMAND As Integer = 274 Private Const SC_MAXIMIZE As Integer = 61488 Private Declare Auto Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As Integer Private Declare Auto Function SendMessage Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer Codice:
Dim P As Process = Process.Start("winword.exe") P.WaitForInputIdle() SetParent(P.MainWindowHandle, Me.Handle) SendMessage(P.MainWindowHandle, WM_SYSCOMMAND, SC_MAXIMIZE, 0) ![]() |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 11:49.