我编的vc++程序1

#include<windows.h>
#include"resource.h"
long FAR PASCAL  WindowProc(HWND   hWnd,   UINT message,
                           WPARAM wParam, LPARAM lParam)
{
 HDC hdc;                 //定义指向设备的句柄
 HBRUSH hBrush;           //定义指向画刷的句柄
 HPEN hPen;               //定义指向画笔的句柄
    PAINTSTRUCT ps;          定义指向包含绘图信息的结构体变量
 POINT points[4]={{420,10},{450,60},{480,10},{420,10}};
 POINT points2[6]={{450,120},{420,150},{420,180},{480,180},{480,150},{450,120}};
 POINT points3[2]={{450,350},{650,350}};
 POINT points4[2]={{550,250},{550,450}};
 // LPPOINT lpPoints;
  switch(message)
    {
 case WM_PAINT:
  hdc=BeginPaint(hWnd,&ps);
  hPen=(HPEN)GetStockObject(BLACK_PEN);   //定义画笔
  hBrush=(HBRUSH)GetStockObject(DKGRAY_BRUSH);   //定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
  SelectObject(hdc,hPen);      //将画笔选入到当前设备环境中
       RoundRect ( hdc, 4, 4, 60, 50,
                               3,  3);
        hBrush=(HBRUSH)GetStockObject(LTGRAY_BRUSH);//定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
        Ellipse( hdc, 80, 80, 150, 250);
  hBrush=(HBRUSH)GetStockObject(HOLLOW_BRUSH);   //定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
        Pie
        ( hdc,
          300,300,  //边框矩形左上角的逻辑坐标
          400,400,  //边框矩形右下角的逻辑坐标
          320,300,  //椭圆弧起始经线的确定点坐标
          380,300  //椭圆弧终止经线的确定点坐标
         );
  hPen=CreatePen(PS_SOLID,2,RGB(255,0,0));   //定义画笔
  hBrush=(HBRUSH)GetStockObject(WHITE_BRUSH);   //定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
  SelectObject(hdc,hPen);      //将画笔选入到当前设备环境中    
     Polyline
        (hdc,
        points,  //指向包含各点坐标的POINT结构数组的指针
        4    // nCount为POINT数组中点的个数
        );
        Ellipse(hdc, 420, 60, 480, 120);
        Polyline
       (hdc,
        points2,  //指向包含各点坐标的POINT结构数组的指针
        6    // nCount为POINT数组中点的个数
        );
  hBrush=(HBRUSH)GetStockObject(BLACK_BRUSH);   //定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
       RoundRect ( hdc, 600, 10, 700, 65,
                              10,  10);
        Pie
        ( hdc,
          600,60,  //边框矩形左上角的逻辑坐标
          700,160,  //边框矩形右下角的逻辑坐标
          625,60,  //椭圆弧起始经线的确定点坐标
          675,60  //椭圆弧终止经线的确定点坐标
         );
        Rectangle( hdc, 600, 160, 700, 200);
  hPen=(HPEN)GetStockObject(BLACK_PEN);   //定义画笔
  hBrush=(HBRUSH)GetStockObject(WHITE_BRUSH);   //定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
  SelectObject(hdc,hPen);      //将画笔选入到当前设备环境中
        Rectangle( hdc, 500, 300, 600, 400);
  hPen=(HPEN)GetStockObject(BLACK_PEN);   //定义画笔
  hBrush=CreateHatchBrush(HS_CROSS,RGB(255,0,0));   //定义画刷
  SelectObject(hdc,hBrush);    //将画刷选入到当前设备环境中
  SelectObject(hdc,hPen);      //将画笔选入到当前设备环境中
        Ellipse
        (
        hdc,
        500, 320,
        600, 380
        );
       hPen=CreatePen(PS_DOT,1,RGB(0,255,0));   //定义画笔
  SelectObject(hdc,hPen);      //将画笔选入到当前设备环境中
        Polyline
       (hdc,
        points3,  //指向包含各点坐标的POINT结构数组的指针
        2    // nCount为POINT数组中点的个数
        );
        Polyline
       (hdc,
        points4,  //指向包含各点坐标的POINT结构数组的指针
        2    // nCount为POINT数组中点的个数
        );
        DeleteObject(hPen);   //删除画笔
  DeleteObject(hBrush);  //删除画刷
  EndPaint(hWnd,&ps);   //结束绘画
  return 0;
    case WM_DESTROY:
        PostQuitMessage(0);
        return 0;
    case WM_KEYDOWN:
        switch(wParam)
        {
        case VK_ESCAPE:
            PostQuitMessage(0);
            break;
        }
        break;
    }
    return DefWindowProc(hWnd,message,wParam,lParam);
}
int CALLBACK WinMain( HINSTANCE hInstance,HINSTANCE hPrevInstance,
                    LPSTR lpCmdLine,  int nCmdShow )
{
    MSG         msg;    //定义一个消息的对象
    HWND        hWnd;   //窗口句柄
    WNDCLASS    wc;     //定义窗口类
 HMENU hMenu;
    HDC hdc;
    //创建窗口类
    wc.style        = CS_HREDRAW | CS_VREDRAW ;//支持水平和垂直重绘
    wc.lpfnWndProc  = WindowProc;              //相应的消息处理函数
    wc.cbClsExtra   = 0;                       //附加内存空间
    wc.cbWndExtra   = 0;                       //附加内存空间
    wc.hInstance    = hInstance;               //窗口的实例句柄
    wc.hIcon        = LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON1)) ;//自定义的窗口的小图标
    wc.hCursor      = LoadCursor(hInstance,MAKEINTRESOURCE(IDC_CURSOR1));//窗口的鼠标形状
    wc.hbrBackground  =  (HBRUSH)GetStockObject(WHITE_BRUSH);    //背景颜色
    wc.lpszMenuName   = TEXT("MYMENU");       //窗口菜单
 hMenu=LoadMenu(hInstance,MAKEINTRESOURCE(IDR_MENU1));
    wc.lpszClassName  = TEXT("createwindows");                         //窗口名称
    RegisterClass(&wc);                                 //注册窗口句柄
    hWnd =CreateWindowEx( WS_EX_TOPMOST,                //窗口总显示在顶部
        TEXT("createwindows"),                      //窗口的类名
        TEXT("李扬 07100109"),       //窗口的标题
        WS_OVERLAPPEDWINDOW|WS_HSCROLL|WS_VSCROLL,//垂直滚动条与水平滚动条
        10,                          //X轴初始化设定坐标
        10,                          //Y轴初始化设定坐标
        800,                         //宽度初始化
        600,                         //高度初始化
        NULL,                         //父窗口句柄
        hMenu,                         //窗口菜单的句柄
        hInstance,                    //实例句柄
        NULL );                        //附加消息
    if(!hWnd)                         //判断窗口是否建立成功
    {
        return false;
    }
 SetMenu(hWnd,hMenu);        
    ShowWindow(hWnd,nCmdShow);    //显示窗口
  
    UpdateWindow(hWnd);           //更新窗口
    while(true)
    {
        //接受系统消息(&msg为MSG类型的信息结构体,NULL 窗口句柄,
        //0,0表示接受所有的窗口信息)
        if(PeekMessage(&msg,NULL,0U,0U,PM_REMOVE))
        {
            if(msg.message ==WM_QUIT)
            {
                break;
            }
            TranslateMessage(&msg);   //转化信息
            DispatchMessage(&msg);    //分配信息到相应的消息处理函数WindowProc中
        }
         
  else
        {
            WaitMessage();   //没有消息,就等待消息
        }
       
    }
    return 1;
}

运行截图

在使用Python来安装geopandas包时,由于geopandas依赖于几个其他的Python库(如GDAL, Fiona, Pyproj, Shapely等),因此安装过程可能需要一些额外的步骤。以下是一个基本的安装指南,适用于大多数用户: 使用pip安装 确保Python和pip已安装: 首先,确保你的计算机上已安装了Python和pip。pip是Python的包管理工具,用于安装和管理Python包。 安装依赖库: 由于geopandas依赖于GDAL, Fiona, Pyproj, Shapely等库,你可能需要先安装这些库。通常,你可以通过pip直接安装这些库,但有时候可能需要从其他源下载预编译的二进制包(wheel文件),特别是GDAL和Fiona,因为它们可能包含一些系统级的依赖。 bash pip install GDAL Fiona Pyproj Shapely 注意:在某些系统上,直接使用pip安装GDAL和Fiona可能会遇到问题,因为它们需要编译一些C/C++代码。如果遇到问题,你可以考虑使用conda(一个Python包、依赖和环境管理器)来安装这些库,或者从Unofficial Windows Binaries for Python Extension Packages这样的网站下载预编译的wheel文件。 安装geopandas: 在安装了所有依赖库之后,你可以使用pip来安装geopandas。 bash pip install geopandas 使用conda安装 如果你正在使用conda作为你的Python包管理器,那么安装geopandas和它的依赖可能会更简单一些。 创建一个新的conda环境(可选,但推荐): bash conda create -n geoenv python=3.x anaconda conda activate geoenv 其中3.x是你希望使用的Python版本。 安装geopandas: 使用conda-forge频道来安装geopandas,因为它提供了许多地理空间相关的包。 bash conda install -c conda-forge geopandas 这条命令会自动安装geopandas及其所有依赖。 注意事项 如果你在安装过程中遇到任何问题,比如编译错误或依赖问题,请检查你的Python版本和pip/conda的版本是否是最新的,或者尝试在不同的环境中安装。 某些库(如GDAL)可能需要额外的系统级依赖,如地理空间库(如PROJ和GEOS)。这些依赖可能需要单独安装,具体取决于你的操作系统。 如果你在Windows上遇到问题,并且pip安装失败,尝试从Unofficial Windows Binaries for Python Extension Packages网站下载相应的wheel文件,并使用pip进行安装。 脚本示例 虽然你的问题主要是关于如何安装geopandas,但如果你想要一个Python脚本来重命名文件夹下的文件,在原始名字前面加上字符串"geopandas",以下是一个简单的示例: python import os # 指定文件夹路径 folder_path = 'path/to/your/folder' # 遍历文件夹中的文件 for filename in os.listdir(folder_path): # 构造原始文件路径 old_file_path = os.path.join(folder_path, filename) # 构造新文件名 new_filename = 'geopandas_' + filename # 构造新文件路径 new_file_path = os.path.join(folder_path, new_filename) # 重命名文件 os.rename(old_file_path, new_file_path) print(f'Renamed "{filename}" to "{new_filename}"') 请确保将'path/to/your/folder'替换为你想要重命名文件的实际文件夹路径。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值