vc++開發簡單的半透明視窗程式示例
環境:xp vc6.0
1: 開啟vc,依次點選 檔案 -> 新建 -> 工程 -> MFC AppWizard {exe} ,填寫工程名test -> 確定 -> 基本對話方塊 -> 完成
2: 開啟 Test2Dlg.cpp 找到 OnInitDialog()函式,註釋掉函式中的內容,
新增以下程式碼:
最後函式OnInitDialog()的程式碼段為//加入WS_EX_LAYERED擴充套件屬性 SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE, GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000); HINSTANCE hInst = LoadLibrary("User32.DLL"); if(hInst) { typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD); MYFUNC fun = NULL; //取得SetLayeredWindowAttributes函式指標 fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes"); if(fun){ fun(this->GetSafeHwnd(),0,128,2);//實現半透明效果 } FreeLibrary(hInst); }
BOOL CTestDlg::OnInitDialog() { //加入WS_EX_LAYERED擴充套件屬性 SetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE, GetWindowLong(this->GetSafeHwnd(),GWL_EXSTYLE)^0x80000); HINSTANCE hInst = LoadLibrary("User32.DLL"); if(hInst) { typedef BOOL (WINAPI *MYFUNC)(HWND,COLORREF,BYTE,DWORD); MYFUNC fun = NULL; //取得SetLayeredWindowAttributes函式指標 fun=(MYFUNC)GetProcAddress(hInst, "SetLayeredWindowAttributes"); if(fun){ fun(this->GetSafeHwnd(),0,128,2);//實現半透明效果 } FreeLibrary(hInst); } /* CDialog::OnInitDialog(); // Add "About..." menu item to system menu. // IDM_ABOUTBOX must be in the system command range. ASSERT((IDM_ABOUTBOX & 0xFFF0) == IDM_ABOUTBOX); ASSERT(IDM_ABOUTBOX < 0xF000); CMenu* pSysMenu = GetSystemMenu(FALSE); if (pSysMenu != NULL) { CString strAboutMenu; strAboutMenu.LoadString(IDS_ABOUTBOX); if (!strAboutMenu.IsEmpty()) { pSysMenu->AppendMenu(MF_SEPARATOR); pSysMenu->AppendMenu(MF_STRING, IDM_ABOUTBOX, strAboutMenu); } } // Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon // TODO: Add extra initialization here */ return TRUE; // return TRUE unless you set the focus to a control }
3:編譯執行,結果截圖如下
相關推薦
vc++開發簡單的半透明視窗程式示例
環境:xp vc6.0 1: 開啟vc,依次點選 檔案 -> 新建 -> 工程 -> MFC AppWizard {exe} ,填寫工程名test -> 確定 -> 基本對話方塊 -> 完成 2: 開啟 Test2Dlg.cpp 找
半透明視窗中顯示標準控制元件(控制元件與文字不透明)的實現方案(附原始碼)
原文 http://blog.csdn.net/harbinzju/article/details/7907127 和大家分享一下在半透明視窗中顯示標準控制元件的實現方案。通過層疊視窗可以簡單實現半透明與不規則形狀視窗的效果,但在其上顯示標準控制元件(控制元件與文字不
桌面透明視窗程式渲染
市面上基本所有的3D遊戲都依賴一個普通的windows視窗,包含標題欄、邊框、最小化、最大化、關閉按鈕。視窗的大小決定了玩家可視的遊戲空間,整個視窗的畫素都被遊戲內容填充滿,視窗背景不是透明的。渲染時,只要建立一個主渲染緩衝區,將各元素渲染在上面,再顯示就可
VS2013下 開發簡單的MFC小程式
這是博主的第一篇部落格,記錄自習一天MFC框架完成一個小程式GUI的歷程。 工具:VS2013+www.baidu.com+已完成的控制檯程式程式碼 一、畫圖 首先,選擇檔案-新建-專案,選擇MFC專案 左下角填寫名稱,確定,選擇基於對話方塊 在資源檢視下,在
css3基礎 color:rgba 文字顏色半透明 簡單示例
學習 logs school con har win src 文字顏色 www 禮悟: 公恒學思合行悟,尊師重道存感恩。葉見尋根三返一,江河湖海同一體。 虛懷若谷良心主,願行無悔給最苦。讀書鍛煉養身心,誠勸且行且珍惜。
Windows API程式設計——最簡單的視窗程式框架示例
用Windows API實現一個自定義視窗也需要這麼一大堆最基本的程式框架: #include <windows.h> static LPCTSTR lpszAppName = "windows API 視窗示例";//視窗名稱 HBRUSH hBlueB
vc++ 開發的程式不定時崩潰怎麼定位?minidump 來幫你
vc++ 開發的程式不定時崩潰怎麼定位?minidump 來幫你 在程式開始的地方設定結構化異常處理函式 //Add UnhandledExceptionFilter; SetUnhandledExceptionFilter(CrashUnhandledException
服務計算——開發簡單 web 服務程式 cloudgo
文章目錄 服務計算——cloudgo 1. 基本任務——搭建簡單web伺服器 1.1 框架選擇 1.2 程式碼 1.2.1 main.go 1.2.2 serve
一個簡單的檔案壓縮程式——在cmd視窗的實現。
在C primier plus 13.3章節中,介紹了一個簡單壓縮程式,程式碼如下: #include<stdio.h> #include<stdlib.h> #include<string.h> #define LEN 40 int main(int ar
spring boot 環境下websocket 開發簡單示例
示例如下,需要注意的是, 類上需要打上@Scope("prototype")註解,否則socket就是單例的 socket的configurator屬性的配置類需要實現ApplicationContextAware,和程式碼裡面一樣的配置之後,server裡面才能成功注入spring
用Python3+tkinter開發簡單圖形介面程式
起因在這裡. 由於此專案和漢字相關, 個人也想嘗試Python的圖形介面開發, 於是開始嘗試. 現在還處於原型狀態, 兩百多行程式碼都在一個檔案中. 幾個主要問題: 原始碼節選: 讀入csv源資料: def 讀入源資料檔案(self, 檔名):
使用 Golang 開發簡單的 CLI 程式 selpg
開發實踐 實現過程 文件中講解得非常仔細,我是完全按照文章的思路,參考原 C 程式的結構,然後用 golang 進行實現。golang 中有用於命令列引數解析、檔案讀寫和輸入輸出的包,可以很方便地實現 CLI 程式的一些複雜功能。 selpg 的 golang
10 訊息佇列與一個簡單的視窗程式
訊息:當我們點選滑鼠的時候,或者當我們按下鍵盤的時候,作業系統都要把這些動作記錄下來,儲存到一個結構體中,這個結構體就是訊息; 訊息佇列:每個執行緒只有一個訊息佇列;訊息對列與執行緒相關的;訊息佇列就是一堆連結串列; 視窗與執行緒的關係:一個執行緒可以有多個視窗,一個視窗指對應一個執行緒;
Win32 程式開發:建立一個應用程式視窗
1)簡單介紹建立應用程式的步驟 1.設計一個視窗類 2.註冊這個視窗類 3.建立應用程式視窗 4.更新顯示視窗 5.應用程式訊息迴圈 2)下面根據這個步驟進行建立一個應用程式視窗吧 /* 標頭檔案 */ #include <windows.h>
如何編寫簡單的應用window視窗程式
#include<windows.h> LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInst,LPSTR lpszCmdL
微信小程式教程(搭建簡單的小程式示例)
微信小程式是一個挺神奇的存在,它的出現使app不是那麼的友好了,還要下載還要更新,但是小程式就不是了,就內嵌在微信裡,隨時用,不用下載(其實就相當於載入到本地,不過佔用記憶體很小),微信伺服器一更新就好了,這樣多方便,小程式我剛開始接觸還是蠻暈的,和正常的套路不太一樣,不過它的js和vue,
如何讓視窗控制元件半透明
在網上關於視窗視覺效果,有2個問題被問得最多:第一個是如何讓視窗邊框有陰影效果?第二個是如何讓視窗控制元件有半透明效果?對於第一個問題,我們的答案是用雙層視窗模擬或是用Layered Window。在XP下可以直接在註冊視窗類時用CS_DROPSHADOW風格,系統就會自動讓你的視窗附加上陰影效果
微信小程式雲開發簡單入門教程
文章目錄 ###開場白: 雲開發顧名思義 就是後端開發,應該是微信上週才推出的開放能力,現在這讓我想起了以前的leancloud,和更早的bmob了,而leancloud一早就開始支援微信小程式開發了,相比較而言,leancloud的資料應該更多些,但畢竟微信自
00 MFC的本質及一個簡單的MFC程式示例
MFC的本質就是對Win32的封裝。 微軟基礎類庫(英語:Microsoft Foundation Classes,簡稱MFC)是微軟公司提供的一個類庫(class libraries),以C++類的形式封裝了Windows API,並且包含一個應用程式框架,以減少應用程式開發人員的工作量。
Android 開發簡單記事本程式
簡單介紹一下功能:簡單記事本只能新增文字內容,首頁用ListView顯示所有儲存的事項和儲存的時間,新增頁面新增內容,點選首頁的ListView可以檢視內容,刪除內容。 先看一下執行效果:先建立資料庫:package com.engineer.shizhibin