首页 > 其他分享 >test

test

时间:2024-02-17 13:55:05浏览次数:15  
标签:hdc 句柄 hwndDlg PAINT HDC test 绘图

GDI绘图

GDI是一种API
句柄:HDC、HWND...
HDC句柄绘图,方式:标准客户区绘图、临时客户区绘图、非客户区绘图

HDC句柄绘图

1、标准客户区绘图
1。新建win32项目(以下没有特殊说明就是默认步骤)
2。添加dialog资源
3。~~窗口ID 设置为 IDD_PAINT_DLG,并添加类IDD_PAINT_DLG~~ 添加CPaintDlg类
4。然后添加代码
```cpp
////TODO: 添加代码。
BOOL CALLBACK dlgFunc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM IParam) {
switch (uMsg) {
case WM_COMMAND:
switch (wParam) {
case IDCANCEL:
EndDialog(hwndDlg, IDCANCEL);
break;
}break;
case WM_PAINT:
{/客户区标准绘图方式/
///在WM_PAINT消息回调时才能执行,调用BeginPaint函数
///获取标准客户区绘图句柄进行绘图,最后调用EndPaint函数释放。
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hwndDlg, &ps);
Rectangle(hdc, 0, 0, 40, 40);
Rectangle(hdc, 80, 80, 140, 140);
MoveToEx(hdc, 20, 20, NULL);
LineTo(hdc, 100, 100);
EndPaint(hwndDlg, &ps);
}break;
}return FALSE;
}
////
```

标签:hdc,句柄,hwndDlg,PAINT,HDC,test,绘图
From: https://www.cnblogs.com/wakaki/p/18017911

相关文章

  • AtCoder Grand Contest 012 E Camel and Oases
    洛谷传送门AtCoder传送门容易发现跳跃次数为\(O(\logV)\)。考虑对于跳跃\(k\)次后的限制\(\left\lfloor\frac{V}{2^k}\right\rfloor\),对每个点预处理出不再跳跃能到达的最左和最右的点\([l_{k,i},r_{k,i}]\)。于是问题变成了,从第\(i\)个区间集选择一个区间\([a_i,......
  • AtCoder Beginner Contest 340 题解
    AtCoderBeginnerContest340题解去我的洛谷博客里看这篇文章!A-ArithmeticProgression模拟即可。//2024/2/11PikachuQAQ#include<iostream>usingnamespacestd;inta,b,d;intmain(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>......
  • AtCoder Beginner Contest 340 题解
    AtCoderBeginnerContest340题解去我的洛谷博客里看这篇文章!A-ArithmeticProgression模拟即可。//2024/2/11PikachuQAQ#include<iostream>usingnamespacestd;inta,b,d;intmain(){ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);cin>>......
  • 基于FPGA的图像RGB转CIE-Lab实现,包含testbench和MATLAB辅助验证程序
    1.算法运行效果图预览 将FPGA的结果导入到matlab,并和matlab的仿真结果进行对比:   2.算法运行软件版本vivado2019.2 matlab2022a 3.算法理论概述     RGB和CIE-Lab是两种常用的颜色空间,它们在不同的应用领域中各有优势。RGB颜色空间主要用于显示设备,而C......
  • KAJIMA CORPORATION CONTEST 2024(AtCoder Beginner Contest 340)
    KAJIMACORPORATIONCONTEST2024(AtCoderBeginnerContest340)A-ArithmeticProgression代码:#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;usingpii=pair<ll,ll>;#definefifirst#definesesecondusingi128=__int128......
  • AtCoder Beginner Contest 340 考试总结
    前言可惜的是我是VP的,却打得相对较好(服了。得分明细:ABCDEFGTotal√√√√√√×2625改题明细:ABCDEFG√√√√√√×第一次打AT,发挥还可以。A.ArithmeticProgressionProblem打印一个包含第一项\(A\),最后一项\(B\)......
  • Atcoder Educational DP Contest 题解
    比赛链接:Atcoderr或者题单A:Frog1常规线性dp,注意到对于每个落点来说,青蛙只能由第\(i-1\)个石头或者第\(i-2\)个石头转移得到,那么我们让\(dp[i]\)为当跳到第\(i\)个石头上的最小费用。此时显然有:\[dp_i=\min(dp_{i-1}+\left|h_i-h_{i-1}\right|,dp_{i-2}+\left|h_......
  • AtCoder Beginner Contest 340
    A-ArithmeticProgression(abc340A)题目大意给定等差数列的首项、末项、公差。输出这个等差数列。解题思路从首相依次累加公差到末项即可。神奇的代码#include<bits/stdc++.h>usingnamespacestd;usingLL=longlong;intmain(void){ios::sync_with_std......
  • The 18th Heilongjiang Provincial Collegiate Programming Contest
    A.MagicComputer看题目猜规律#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongusingvi=vector<int>;usingi32=int32_t;constintmod=998244353;intpower(intx,inty){intans=1;while(y){if(y&......
  • Atcoder Grand Contest 056 B - Range Argmax
    因为一组\(x\)可能对应多组\(p\),考虑怎么让决策唯一化。我们从大到小依次钦定每个值的位置,即倒着遍历\(i=n,n-1,\cdots,1\),找到最左端的位置\(v\)满足,对于现在还活着的所有区间\(j\)满足\(l_j\lev\ler_j\),都有\(x_j=v\),令\(p_j=i\),然后删去所有包含\(i\)的区间。......