桌面上的街舞之基礎篇(09 04 29)

2021-04-28 06:23:13 字數 1913 閱讀 4664

首先說下這是個什麼東西吧,就是乙個類似於

qq寵物的東東,能在你的桌面上蹦啊蹦啊蹦啊……的那麼乙個東東。

先給你看幾個效果圖:

當然了,完成後可是動態的哦。

好了,廢話不多說。先給你打個基礎。

知道四個

api:

getwindowlong,setwindowlong, setlayeredwindowattributes,setwindowpos 先說

setwindowpos

吧。函式原型:

setwindowpos

(byval hwnd as long, byval hwndinsertafter as long, byval x as long, byval y as long, byval cx as long, byval cy as long, byval wflags as long) as long

作用是讓窗體前置。

給個例子:

private const hwnd_topmost = -1

private sub form_load()

setwindowpos me.hwnd, hwnd_topmost, 0, 0, 0, 0, 3

end sub

再說getwindowlong

:函式原型:

getwindowlong (byval hwnd as long, byval nindex as long) as long

作用是從指定視窗中返回資訊。獲得指定視窗的結構資料資訊,什麼叫

"視窗的結構資料資訊

"?就是

1個視窗的諸方面情況吧,象人有姓名性別年齡等一樣,視窗有

"擴充套件樣式(包含標題欄,有標題欄縮小、無標題欄等的組合值)",

"樣式(包含滾動條、系統選單、邊框等可設定)",

"父視窗",

"子視窗",

"視窗函式

"等諸多方面,見下面

nindex

引數值。這些方面的內容(每

1方面只能有

1個當前值)就構成了視窗的結構資訊。

還有就是

setwindowlong

:這個是和

getwindowlong

合用的。

函式原型:

setwindowlong (byval hwnd as long, byval nindex as long, byval dwnewlong as long) as long

作用就是在視窗結構中未指定的視窗設定資訊。常用此函式來動態地設定視窗的風格(如樣式,滾動條等等)。即不在屬性視窗中設定。而在

api中設定。

最後乙個

setlayeredwindowattributes

:這是設定窗體透明的函式。

setlayeredwindowattributes (byval hwnd as long, byval crkey as long, byval balpha as byte, byval dwflags as long) as long

hwnd:

控制代碼crkey

:顏色值

balpha

:透明度取值區間【

0~255

】dwflags:

透明方式

其中透明方式有兩種:①、取

lwa_alpha,

此時crkey

引數無效。

balpha

有效。②、取

lwa_clorkey

,此時窗體中所有顏色值為

crkey

的地方將為透明(透明度取決於

balpha

)。使用前提是:首先要是窗體有

ws_ex_layered

擴充套件屬性。(用

setwindowlong

就可以)

未完待續……

桌面上的舞蹈之完成篇(09 04 29)

接著上次的說,上次說完了幾個 api。這算是這個東西裡面的乙個核心吧。下面就把它完成了。api懂了其他的就沒什麼了。我給你說下大體實現。首先是有個 flash backgroundcolor設為0 然後就是用上面的三個 api getwindowlong,setwindowlong,setlayer...

桌面上的舞蹈之總結篇(09 04 30)

看了上兩篇文章後是不是覺得做乙個這個東西出來是很簡單呢。不知道你是什麼感覺。當時我把這個東西分析出來的時候感覺真是太簡單了。但卻也費了我不少精力。不過還好對於 api的使用又有了深入的感覺。關於這個程式,本身就沒有多少東西,但是基於此你可以想到更加廣闊的應用。比如說用這裡面的一些東西把一朵花做成透明...

Android的桌面上的應用介紹

android的桌面上有三種型別的圖示分別為 快捷方式,實時資料夾,桌面外掛程式 一 快捷方式 在桌面上的快捷方式是應用程式的快捷方式,主要用於快速啟動應用程式。在桌面區域佔乙個單元格的大小。二 實時資料夾 提 用的實時更新,主要包括聯絡人實時資料夾 電子郵件實時資料夾。在桌面區域佔乙個單元格的大小...