看板 Visual_Basic 關於我們 聯絡資訊
※ 引述《jim61103 (丁丁)》之銘言: : 請輸入專案類型(網站專案或者應用程式專案):應用程式 : 各位大大好 : 我現在在寫一個程式 : 我有用了PrintDocument這個元件 : 使用了PrintDocument1.Print() : 可是他不會"立刻"列印 : 就像是開wordpad按列印一樣 : 會有一個視窗跑出來 : 我想要做到按一下列印 : 他會立刻列印 : 像word2010按列印一樣 : 有人知道我該怎麼做嘛? 或許有其他更好的方法....,但因本人很少寫到有列印的部份 故提供一個手上常用的通用解法範例 window 名和CLASS名,可以用 SPY++ 查 ================================================= 'API操作其他程序中的按钮(小算盤1+2=3) Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long Private Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Private Const BM_CLICK = &HF5 Private Sub Command1_Click() Dim lPHWnd As Long, lCHWnd1 As Long, lCHWnd2 As Long, lCHWndA As Long, lCHWndE As Long lPHWnd = FindWindow(vbNullString, "小算盤") lCHWnd1 = FindWindowEx(lPHWnd, ByVal 0&, vbNullString, "1") lCHWnd2 = FindWindowEx(lPHWnd, ByVal 0&, vbNullString, "2") lCHWndA = FindWindowEx(lPHWnd, ByVal 0&, vbNullString, "+") lCHWndE = FindWindowEx(lPHWnd, ByVal 0&, vbNullString, "=") SendMessage lCHWnd1, BM_CLICK, 0, 0 SendMessage lCHWndA, BM_CLICK, 0, 0 SendMessage lCHWnd2, BM_CLICK, 0, 0 SendMessage lCHWndE, BM_CLICK, 0, 0 End Sub -- ████ █ ★ ████ █ █ █ █ █ █ █ █ █ 超 級 熱 烈 歡 迎 █ ████ █ █ █ ████ █ █ █ █ █ ███★ █ █ 歡迎到嘉義版! ★███ █ █ █ █ █ █ █ 訊馳電腦-路徑嘉義市林森西路496號(05)2244-526順發斜對面 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.127.140.29
chinoyan:補充一下,以上為VB6 語法,.NET請用轉一下 07/20 06:33
jim61103:謝謝~我會在試試看 感恩 07/20 09:00
jim61103:我好像不太會轉耶>< 求救~ 07/21 00:51
chinoyan:.NET 功能表找一下就有 VB6轉.NET 07/23 04:58
jim61103:我在試試看~謝謝喔 07/25 12:45
jim61103:我在.NET功能表找了很久 還是沒有找到vb6轉.net的 07/28 14:43
jim61103:我使用vs2010 07/28 14:43