看板 C_Sharp 關於我們 聯絡資訊
最近剛開始自學C# 想寫一個擷取畫面小程式做練習 不過第一步就卡死了 應該不是程式寫錯 因為我根本還沒加入程式碼 程式只有三個控制項 Form1、pictureBox1、button1 只有簡單做了三個動作 一、From1的屬性 TransparencyKey 設為 Green 二、pictureBox1的屬性 BackColor 設為 Green 三、為了確認button1有沒有被按 button1_Click加入了下面這行 MessageBox.Show("button1 has been pressed"); 執行之後 如下圖 https://imgur.com/dlM9dkM
蝴蝶是桌面 可以看到pictureBox1變透明了 可是button1卻沒辦法點選 只要把TransparencyKey跟BackColor調回預設值或把兩個顏色錯開 pictureBox就不再透明 button也恢復正常了 本來的用意是要按button來擷取pictureBox裡面的畫面 是用錯控制項了嗎 還是有其他問題 希望版上的神人能幫忙指點 謝謝大家 補充一下版本資訊 Microsoft Visual Studio 2017 .Net Framework 4.6.1 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.138.50.154 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1569659284.A.D51.html ※ 編輯: unfinish (220.138.50.154 臺灣), 09/28/2019 16:30:29
testPtt: winform對透明的支援不好 要寫成直接抓圖再顯示 09/28 18:31
pictureBox是用來限制擷圖大小及範圍用的 也就是說我固定只抓pictureBox那一塊區域而已 因此才會把pictureBox弄成透明 請問這有辦法達成嗎 ※ 編輯: unfinish (220.138.50.154 臺灣), 09/28/2019 19:31:26
testPtt: 我想背景抓圖免不了要winapi 09/28 21:36
kobe8112: 我以前寫的簡易版做法是用半透明WinForm覆蓋每一個螢幕 09/29 18:27
kobe8112: 偵測鍵鼠事件繪製使用者選取的範圍及截圖 09/29 18:27
kobe8112: 這樣的話是不需用到windows api 09/29 18:28
disabledman: 我2019 com 版正常 10/04 13:25