VB如何使窗體及部件浮在螢幕上而不能被選中

2022-09-18 17:50:18 字數 4220 閱讀 4812

1樓:涐吢銥舊囿儚

option explicit

'宣告這兩個 api :

private declare function getwindowlong lib "user32" _

alias "getwindowlongw" (byval hwnd as long, _

byval nindex as long) as long

private declare function setwindowlong lib "user32" _

alias "setwindowlongw" (byval hwnd as long, _

byval nindex as long, _

byval dwnewlong as long) as long

private sub command1_click()

'這個是把「自己」設定滑鼠穿透

'如果是設定別的視窗,下面的 hwnd就換成對應視窗的控制代碼

call setwindowlong(hwnd, -20, _

end sub

2樓:匿名使用者

你這個是隔山大虎啊,你的思路錯了!

正確的思路是,以透明的窗體及空間事件響應其背後的操作,就是點選了這個窗體,而呼叫其背後窗體或者控制元件的對應事件,你試一下

vb中,如何使控制元件始終顯示在螢幕**?

3樓:匿名使用者

vb中,使控制元件始終顯示在螢幕或窗體**設計窗體時對窗體startupposition屬性選2,在

窗體resize 事件中編寫放置控制元件始終處於窗體中心位置的**。

startupposition 屬性,返回或設定一個值,指定物件首次出現時的位置,執行時不能使用。

resize 事件,當一個物件第一次顯示或當一個物件的視窗狀態改變時該事件發生。(例如,一個窗體被最大化、最小化或被還原。)

示例**:

private sub form_resize()

command1.left = (form1.scalewidth - command1.width) / 2

command1.top = (form1.scaleheight - command1.height) / 2

command1.visible = true

end sub

4樓:了不起的馬里奧

我大概知道你的意思了。在**中新增:

private sub form_resize()

command1.left = (form1.scalewidth - command1.width) / 2

command1.top = (form1.scaleheight - command1.height) / 2

end sub

如果你要用 visible 屬性顯示按鈕時,最好在顯示之前加上改變大小的**,如:

command1.left = (form1.scalewidth - command1.width) / 2

command1.top = (form1.scaleheight - command1.height) / 2

command1.visible = true

不行的話就追問

5樓:龍翔飛飛

private sub form_resize()command1.left = (form1.scalewidth - command1.width) / 2

command1.top = (form1.scaleheight - command1.height) / 2

end sub

6樓:匿名使用者

沒學過控制元件的left和top屬性?沒學過控制元件的move方法?沒學過窗體的 resize 事件?

vb裡面怎麼讓窗體中的控制元件的位置隨著窗體介面的大小變化而變化

7樓:匿名使用者

在窗體resize事件中根據窗體的寬度改變控制元件的寬高就行了。

例如private sub form_resize()picture1.width=form1.width/10picture1.

height=form1.height/10這樣控制元件根據窗體的大小縮放。同樣,相對位置也可以這樣

關於vb的:在窗體上要同時選中多個控制元件的問題。

8樓:匿名使用者

都可以的呀,你自己試試在win平臺下選中檔案都是這樣的,shift和ctrl都是可以多個選中的。

就像ps書上也有一些東西都是通用的。

書上沒寫全罷了,程式書就是這樣。

9樓:匿名使用者

在vb中物件選擇的快捷鍵其實和windows中是一樣的

10樓:匿名使用者

ctrl是間隔選中

shift不是

如果只有兩個控制元件的話

效果應該是一樣的

11樓:匿名使用者

可以用的~

ctrl是可以間隔選中的

shift一般是連續的選中

如何使vb的窗體在電腦螢幕上隨滑鼠一起移動?

12樓:騰訊電腦管家

先用vb做一個視窗,在top0 left0 的位置。使滑鼠一移動到視窗,視窗就跑到螢幕右上角再移動到螢幕右上角,就跑到右下角,接著在螢幕右下角的視窗裡移動又跑到左下角,最後在螢幕左下角的視窗裡移動又跑回原來的位置,就這樣不斷迴圈。

13樓:三號床鋪的四哥

使vb的窗體在電腦螢幕上隨滑鼠一起移動方法先用vb做一個視窗,在top0 left0 的位置。使滑鼠一移動到視窗,視窗就跑到螢幕右上角再移動到螢幕右上角,就跑到右下角,接著在螢幕右下角的視窗裡移動又跑到左下角,最後在螢幕左下角的視窗裡移動又跑回原來的位置。就這樣不斷迴圈。

這是我跟網上學,寫的**,但是移到右上角的時候就不動了。誰能告訴我錯在哪了,幫我改一下private sub form_mousemove(button as integer, shift as integer, x as single, y as single)

if form1.top = 0 thenform1.top = 0

form1.left = 16000

elseif form1.left = 16000 thenform1.top = 9500

form1.left = 16000

elseif form1.top = 9500 thenform1.top = 9500

form1.left = 0

elseif form1.left = 0 thenform1.top = 0

form1.left = 0

end if

end sub

vb 怎麼設定窗體的大小隨著螢幕解析度自動改變

14樓:excel開發

自動改變難度不大,如:

private sub form_load()form1.width = screen.widthform1.height = screen.heightend sub

還有一種辦法是設定,啟動是最大化。

但窗體大小的變更會影響窗體上各控制元件的佈局,重新佈局很繁很繁,窗體上每個控制元件的位置或大小都要重新定義。

15樓:風光青蛙

1:獲取當前螢幕的解析度/當前窗體的大小(這個要轉成畫素單位)=比值

2:當前螢幕的解析度×比值

你再加點分,我給你**。

16樓:**黃教主

在過程form_resize()裡處理

vb編寫程式怎樣使窗體每次啟動時總顯示在螢幕的右上角?

17樓:匿名使用者

使用版本是否相同?需要執行自定義命令。

18樓:匿名使用者

private sub form_load()me.left = screen.width - me.widthme.top = 0

end sub

19樓:匿名使用者

窗體有 top 和 left 屬性

VB透明窗體

private declare function setwindowlong lib user32 alias setwindowlonga byval hwnd as long,byval nindex as long,byval dwnewlong as long as long private...

VB窗體上的鍵盤事件

select case keyas case 70 keyname f1 增加你的執行 例如 text1.forecolor hff 文字框字型顏色,每個判斷下面都應該有執行 的 或文字框顯示內容,下同。text1.text f1 case 71 keyname f2 case 72 keyname...

關於VB中MDI窗體的問題,關於VB中MDI窗體的一個問題

private sub menclose click picture1.print i do until i 0 exit click i i 1 要有迴圈結束條件 loop end sub 1 private sub menclose click for i forms.count 1 to 0 ...