您现在的位置是:Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款 > 

01 訂閱轉換api的示例和教程(請問C#用Win32 API判斷用戶按下的是哪個字母按鍵,需要用到哪幾個函數?請給個簡單代碼示例,謝謝!)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款2024-05-31 04:46:13【】2人已围观

简介求API中AlphaBlend函數使用示例1AlphaBlend函數功能:該函數用來顯示透明或半透明像素的位圖。函數原型:AlphaBlend(HDChdcDest,intnXOriginDest,i

求API中AlphaBlend函數使用示例

1 AlphaBlend

函數功能:該函數用來顯示透明或半透明像素的位圖。

函數原型:AlphaBlend(HDC hdcDest,int nXOriginDest,int nYOriginDest,int nWidthDest,int hHeightDest,HDC hdcSrc,int nXOriginSrc,int nYOriginSrc,int nWidthSrc,int nHeightSrc,BLENDFUNCTION blendFunction);

參數:

hdcDest:指向目標設備環境的句柄。

nXoriginDest:指定目標矩形區域左上角的X軸坐標,按邏輯單位。

nYOriginDest:指定目標矩形區域左上角的Y軸坐標,按邏輯單位。

nWidthDest:指定目標矩形區域的寬度,按邏輯單位。

hHeghtdest:指向目標矩形區域高度的句柄,按邏輯單位。

hdcSrc:指向源設備環境的句柄。

nXOriginSrc:指定源矩形區域左上角的X軸坐標,按邏輯單位。

nYOriginSrc:指定源矩形區域左上角的Y軸坐標,按邏輯單位。

nWidthSrc:指定源矩形區域的寬度,按邏輯單位。

nHeightSrc:指定源矩形區域的高度,按邏輯單位。

blendFunction:指定用于源位圖和目標位圖使用的alpha混合功能,用于整個源位圖的全局alpha值和格式信息。源和目標混合功能當前只限為AC_SRC_OVER。

返回值:如果函數執行成功,那么返回值為TRUE;如果函數執行失敗,那么返回值為FALSE。

備注:如果源矩形區域與目標矩形區域大小不一樣,那么將縮放源位圖與目標矩形區域匹配。如果使用SetStretchBltMode函數,那么iStretchMode的值是BLACKONWHITE和WHITEONBLACK,在本函數中,iStretchMode的值自動轉換成COLORONCOLOR。目標坐標使用為目標設備環境當前指定的轉換方式進行轉換。源坐標則使用為源設備環境指定的當前轉換方式進行轉換。如果源設備環境標識為增強型圖元文件設備環境,那么會出錯(并且該函數返回FALSE)。如果目標和源位圖的色彩格式不同,那么AlphaBlend將源位圖轉換以匹配目標位圖。

AlphaBlend不支持鏡像。如果源或目標區域的寬度或高度為負數,那么調用將失敗。

注意添加 #pragma 買粉絲ment(lib,"Msimg32.lib")庫

下面是一個例子:

#include <windows.h>

#pragma 買粉絲ment(lib,"Msimg32.lib")

HINSTANCE g_hIns;

HWND g_hWnd;

LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);

int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int iCmdShow)

{

g_hIns=hInstance;

static TCHAR szAppName[]=TEXT("HelloWin");

HWND hWnd;

MSG msg;

WNDCLASS wndClass;

wndClass.style=CS_HREDRAW|CS_VREDRAW;

wndClass.lpfnWndProc=WndProc;

wndClass.cbClsExtra=0;

wndClass.cbWndExtra=0;

wndClass.hInstance=hInstance;

wndClass.hI買粉絲n=LoadI買粉絲n(NULL,IDI_APPLICATION);

wndClass.hCursor=LoadCursor(NULL,IDC_ARROW);

wndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);

wndClass.lpszMenuName=NULL;

wndClass.lpszClassName=szAppName;

if(!RegisterClass(&wndClass))

{

MessageBox(NULL,TEXT("error"),szAppName,MB_ICONERROR|MB_OK);

return 0;

}

hWnd=CreateWindow(szAppName,TEXT("The hello program"),WS_OVERLAPPEDWINDOW,

CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);

int iReturn;

//也可以放在此

ShowWindow(hWnd,iCmdShow);

UpdateWindow(hWnd);

while(GetMessage(&msg,hWnd,0,0))

{

TranslateMessage(&msg);

DispatchMessage(&msg);

}

return msg.wParam;

}

LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)

{

static HDC hdc;

static HDC hBitmapDC;

static HBITMAP hBitmap;

static int w=50;

static int h=50;

static BLENDFUNCTION bf;

PAINTSTRUCT ps;

switch (message)

{

case WM_PAINT :

hdc=BeginPaint(hWnd,&ps);

hBitmapDC = CreateCompatibleDC(hdc);

hBitmap = CreateCompatibleBitmap(hdc,w,h);

SelectObject(hBitmapDC,hBitmap);

SetTextColor(hBitmapDC,RGB(0,255,0));

TextOut(hBitmapDC,0,0,TEXT("asdf"),4);

bf.BlendOp = AC_SRC_OVER;

bf.BlendFlags = 0;

bf.AlphaFormat = 0;

bf.SourceConstantAlpha = 50;

AlphaBlend(hdc,0,0,w,h,hBitmapDC,0,0,w,h,bf);

EndPaint (hWnd, &ps) ;

break;

case WM_DESTROY :

PostQuitMessage (0) ;

break ;

default:

return DefWindowProc (hWnd, message, wParam, lParam) ;

}

return 1;

}

GO語言商業案例(十八):stream

切換到新語言始終是一大步,尤其是當您的團隊成員只有一個時有該語言的先前經驗。現在,Stream 的主要編程語言從 Python 切換到了 Go。這篇文章將解釋stream決定放棄 Python 并轉向 Go 的一些原因。

Go 非常快。性能類似于 Java 或 C++。對于用例,Go 通常比 Python 快 40 倍。

對于許多應用程序來說,編程語言只是應用程序和數據庫之間的粘合劑。語言本身的性能通常并不重要。然而,Stream 是一個API 提供商,為 700 家公司和超過 5 億最終用戶提供提要和聊天平臺。多年來,我們一直在優化 Cassandra、PostgreSQL、Redis 等,但最終,您會達到所使用語言的極限。Python 是一門很棒的語言,但對于序列化/反序列化、排名和聚合等用例,它的性能相當緩慢。我們經常遇到性能問題,Cassandra 需要 1 毫秒來檢索數據,而 Python 會花費接下來的 10 毫秒將其轉換為對象。

看看我如何開始 Go 教程中的一小段 Go 代碼。(這是一個很棒的教程,也是學習 Go 的一個很好的起點。)

如果您是 Go 新手,那么在閱讀那個小代碼片段時不會有太多讓您感到驚訝的事情。它展示了多個賦值、數據結構、指針、格式和一個內置的 HTTP 庫。當我第一次開始編程時,我一直喜歡使用 Python 更高級的功能。Python 允許您在編寫代碼時獲得相當的創意。例如,您可以:

這些功能玩起來很有趣,但是,正如大多數程序員會同意的那樣,在閱讀別人的作品時,它們通常會使代碼更難理解。Go 迫使你堅持基礎。這使得閱讀任何人的代碼并立即了解發生了什么變得非常容易。 注意:當然,它實際上有多“容易”取決于您的用例。如果你想創建一

很赞哦!(662)

Instagram刷粉絲, Ins買粉絲自助下單平台, Ins買贊網站可微信支付寶付款的名片

职业:程序员,设计师

现居:河南周口扶沟县

工作室:小组

Email:[email protected]