windows程序设计 订阅
《Windows程序设计(第5版 珍藏版)》是2010年清华大学出版社出版的图书,作者是(美)佩措尔德,译者是方敏、张胜、梁路平。 [1] 展开全文
《Windows程序设计(第5版 珍藏版)》是2010年清华大学出版社出版的图书,作者是(美)佩措尔德,译者是方敏、张胜、梁路平。 [1]
信息
作    者
佩措尔德(CharlesPetzold)
译    者
方敏、张胜、梁路平
定    价
129.00元
书    名
Windows程序设计
出版时间
2010年9月1日
开    本
16开
出版社
清华大学出版社
ISBN
9787302227397
Windows程序设计内容简介
作为Windows开发人员的必备参考,涵盖基础知识和中高级主题,全面地介绍了Windows程序设计所涉及的细枝末节,旨在帮助读者从高屋建瓴的角度,建立完整的知识体系,为以后的职业生涯奠定良好的基础。全书共3部分23章。第1~12章着重介绍基础知识,第13~18章的主题为图形,第19~23章涉及更多高级主题。《Windows程序设计(第5版 珍藏版)》适合任何层次的Windows程序员阅读和参考,是帮助他们梳理和建立Windows知识体系的理想读物。
收起全文
精华内容
下载资源
问答
  • Windows 程序设计

    万次阅读 热门讨论 2007-11-25 10:40:00
    学习 Visual C++ ,有一本书一定要看,它就是 Charles Petzold 的《 Windows 程序设计 》,英文书名为《 Programming Windows 》。这本书的中文版由“北京博彦科技”翻译,下面我给大家介绍一下这本书:书名:...

    学习 Visual C++ ,有一本书一定要看,它就是 Charles Petzold 的《 Windows 程序设计 》,英文书名为《 Programming Windows 》。这本书的中文版由“北京博彦科技”翻译,下面我给大家介绍一下这本书:

    书名:Windows 程序设计(第5版)(上、下册)

    出版社:北京大学出版社

    书号:730104187X 

    出版日期:
    2004 年9月

    价格:¥
    160

    由于价格比较高,所以很多朋友都是下载这本书的电子版;但是,我还是建议有能力的话,还是应该买本书,因为它的确是一本非常经典的书。

    这个电子书是由“壹佰软件开发小组  整理编译”的。

    中文版电子书下载地址:

    http://www.softhy.net/down.asp?id=3143&no=1 

     

    英文版电子书下载地址:

    http://download.pchome.net/php/tdownload2.php?sid=12566&url=/development/reference/ProgramWin0817.zip&svr=1&typ=1

    展开全文
  • Windows程序设计

    2007-05-18 15:38:00
    进行Windows程序设计,实际上是在进行一种对象导向的程序设计(OOP)。这一点在Windows中使用得最多的对象上表现最为明显。这种对象正是Windows之所以命名为「Windows」的原因,它具有人格化的特征,甚至可能会在您...

    进行Windows程序设计,实际上是在进行一种对象导向的程序设计(OOP)。这一点在Windows中使用得最多的对象上表现最为明显。这种对象正是Windows之所以命名为「Windows」的原因,它具有人格化的特征,甚至可能会在您的梦中出现,这就是那个叫做「窗口」的东西。

    桌面上最明显的窗口就是应用程序窗口。这些窗口含有显示程序名称的标题列、菜单甚至可能还有工具列和滚动条。另一类窗口是对话框,它可以有标题列也可以没有标题列。

    装饰对话框表面的还有各式各样的按键、单选按钮、复选框、清单方块、滚动条和文字输入区域。其中每一个小的视觉对象都是一个窗口。更确切地说,这些都称为「子窗口」或「控件窗口」或「子窗口控件」。

    作为对象,使用者会在屏幕上看到这些窗口,并通过键盘和鼠标直接与它们进行交互操作。更有趣的是,程序写作者的观点与使用者的观点极其类似。窗口以「消息」的形式接收窗口的输入,窗口也用消息与其它窗口通讯。对讯息的理解将是学习如何写作Windows程序所必须越过的障碍之一。

    这有一个Windows的消息范例:我们知道,大多数的Windows程序都有大小合适的应用程序窗口。也就是说,您能够通过鼠标拖动窗口的边框来改变窗口的大小。通常,程序将通过改变窗口中的内容来响应这种大小的变化。您可能会猜测(并且您也是正确的),是Windows本身而不是应用程序在处理与使用者重新调整窗口大小相关的全部杂乱程序。由于应用程序能改变其显示的样子,所以它也「知道」窗口大小改变了。

    应用程序是如何知道使用者改变了窗口的大小的呢?由于程序写作者习惯了往常的文字模式程序,操作系统没有设置将此类消息通知给使用者的机制。问题的关键在于理解Windows所使用的架构。当使用者改变窗口的大小时,Window给程序发送一个消息指出新窗口的大小。然后程序就可以调整窗口中的内容,以响应大小的变化。

    「Windows给程序发送消息。」我们希望读者不要对这句话视而不见。它到底表达了什么意思呢?我们在这里讨论的是程序代码,而不是一个电子邮件系统。操作系统怎么给程序发送消息呢?

    其实,所谓「Windows给程序发送消息」,是指Windows呼叫程序中的一个函数,该函数的参数描述了这个特定消息。这种位于Windows程序中的函数称为「窗口消息处理程序」。

    无疑,读者对程序呼叫操作系统的做法是很熟悉的。例如,程序在打开磁盘文件时就要使用有关的系统呼叫。读者所不习惯的,可能是操作系统呼叫程序,而这正是Windows对象导向架构的基础。

    程序建立的每一个窗口都有相关的窗口消息处理程序。这个窗口消息处理程序是一个函数,既可以在程序中,也可以在动态链接库中。Windows通过呼叫窗口消息处理程序来给窗口发送消息。窗口消息处理程序根据此消息进行处理,然后将控制传回给Windows。

    更确切地说,窗口通常是在「窗口类别」的基础上建立的。窗口类别标识了处理窗口消息的窗口消息处理程序。使用窗口类别使多个窗口能够属于同一个窗口类别,并使用同一个窗口消息处理程序。例如,所有Windows程序中的所有按钮均依据同一个窗口类别。这个窗口类别与一个处理所有按钮消息的窗口消息处理程序(位于Windows的动态链接库中)联结。

    在对象导向的程序设计中,对象是程序与数据的组合。窗口是一种对象,其程序是窗口消息处理程序。数据是窗口消息处理程序保存的信息和Windows为每个窗口以及系统中那个窗口类别保存的信息。

    窗口消息处理程序处理给窗口发送消息。这些消息经常是告知窗口,使用者正使用键盘或者鼠标进行输入。这正是按键窗口知道它被「按下」的奥妙所在。在窗口大小改变,或者窗口表面需要重画时,由其它消息通知窗口。

    Windows程序开始执行后,Windows为该程序建立一个「消息队列」。这个消息队列用来存放该程序可能建立的各种不同窗口的消息。程序中有一小段程序代码,叫做「消息循环」,用来从队列中取出消息,并且将它们发送给相应的窗口消息处理程序。有些消息直接发送给窗口消息处理程序,不用放入消息队列中。

    如果您对这段Windows架构过于简略的描述将信将疑,就让我们去看看在实际的程序中,窗口、窗口类别、窗口消息处理程序、消息队列、消息循环和窗口消息是如何相互配合的。这或许会对您有些帮助。

    HELLOWIN程序

    建立一个窗口首先需要注册一个窗口类别,那需要一个窗口消息处理程序来处理窗口消息。处理窗口消息对每个Windows程序都带来了些负担。程序3-1所示的HELLOWIN程序中整个做的事情差不多就是料理这些事情。

    程序3-1 HELLOWIN
            
    HELLOWIN.C
            
    /*------------------------------------------------------------------------
            
      HELLOWIN.C -- Displays "Hello, Windows 98!" in client area
            
                     (c) Charles Petzold, 1998
            
    -----------------------------------------------------------------------*/
            
    #include <windows.h>
            
    
    LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;
            
    
    int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
            
                       PSTR szCmdLine, int iCmdShow)
            
    {
            
        static TCHAR szAppName[] = TEXT ("HelloWin") ;
            
        HWND   hwnd ;
            
        MSG    msg ;
            
        WNDCLASwndclass ;
            
    
       wndclass.style        = CS_HREDRAW | CS_VREDRAW ;
            
       wndclass.lpfnWndProc  = WndProc ;
            
        wndclass.cbClsExtra   = 0 ;
            
        wndclass.cbWndExtra   = 0 ;
            
        wndclass.hInstance    = hInstance ;
            
        wndclass.hIcon        = LoadIcon (NULL, IDI_APPLICATION) ;
            
      wndclass.hCursor      = LoadCursor (NULL, IDC_ARROW) ;
            
       wndclass.hbrBackground= (HBRUSH) GetStockObject (WHITE_BRUSH) ;
            
      wndclass.lpszMenuNam  = NULL ;
            
        wndclass.lpszClassName= szAppName ;
            
    
        if (!RegisterClass (&wndclass))
            
        {
            
                MessageBox (  NULL, TEXT ("This program requires Windows NT!"),
            
                                      szAppName, MB_ICONERROR) ;
            
                return 0 ;
            
        }
            
        hwnd = CreateWindow( szAppName,      // window class name
            
                       TEXT ("The Hello Program"),   // window caption
            
                       WS_OVERLAPPEDWINDOW,  // window style
            
                       CW_USEDEFAULT,// initial x position
            
                       CW_USEDEFAULT,// initial y position
            
                       CW_USEDEFAULT,// initial x size
            
                       CW_USEDEFAULT,// initial y size
            
                       NULL,                 // parent window handle
            
                   NULL,            // window menu handle
            
                   hInstance,   // program instance handle
            
                   NULL) ;      // creation parameters
            
       
            
        ShowWindow (hwnd, iCmdShow) ;
            
        UpdateWindow (hwnd) ;
            
       
            
        while (GetMessage (&msg, NULL, 0, 0))
            
        {
            
                TranslateMessage (&msg) ;
            
              DispatchMessage (&msg) ;
            
        }
            
        return msg.wParam ;
            
    }
            
    
    LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
            
    {
            
        HDC                   hdc ;
            
        PAINTSTRUCT ps ;
            
        RECT          rect ;
            
       
            
        switch (message)
            
        {
            
        case WM_CREATE:
            
        PlaySound (TEXT ("hellowin.wav"), NULL, SND_FILENAME | SND_ASYNC) ;
            
                return 0 ;
            
    
        case   WM_PAINT:
            
                hdc = BeginPaint (hwnd, &ps) ;
            
            
            
                GetClientRect (hwnd, &rect) ;
            
            
            
                DrawText (hdc, TEXT ("Hello, Windows 98!"), -1, &rect,
            
                       DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
            
                     EndPaint (hwnd, &ps) ;
            
                       return 0 ;
            
            
            
        case   WM_DESTROY:
            
                PostQuitMessage (0) ;
            
                return 0 ;
            
        }
            
      return DefWindowProc (hwnd, message, wParam, lParam) ;
            
    }
    

     

    展开全文
  • C# Windows程序设计(上下册PDF电子书)

    千次下载 热门讨论 2008-07-18 17:33:21
    C# Windows程序设计(上下册PDF电子书)
  • Windows程序设计与Windows核心编程(资源)

    千次阅读 多人点赞 2016-02-01 22:53:50
    Windows程序设计与Windows核心编程   1.Ready 《Windows程序设计》(百科) 《Windows核心编程》(百科) 2.Resource Windows程序设计 书籍参考(Charles Petzold-Windows程序设计第五版) 链接:...

    Windows程序设计与Windows核心编程

     

    1.Ready

    《Windows程序设计》(百科)
    《Windows核心编程》(百科)

    2.Resource

    Windows程序设计

    书籍参考(Charles Petzold-Windows程序设计第五版)
    链接:http://pan.baidu.com/s/1skkmVjJ
    密码: k444
    
    
     
    视频参考(小金鱼系列视屏教程-Windows程序设计)
    http://pan.baidu.com/share/home?uk=2452628773&view=share

    Windows核心编程

    Windows核心编程(第5版中文版)  以及source code
    
     
    链接: http://pan.baidu.com/s/1pLxk9U7
    密码: 9w5j
    
     
    链接: http://pan.baidu.com/s/1c2FhWMs
    密码: ia5y
    
     
    
     
    
     
    source code 如下:

     

    工作环境

    Windows7(X86)+ Visual Studio 2013 + MSDN离线版
    安装Visual Studio 2015及MSDN离线版 (如何安装?传送门)

     

     

    展开全文
  • Windows程序设计应用开发

    千人学习 2018-03-15 20:24:22
    养具备Win32 API SDK级别对Windows平台程序编码能力,可以参与Windows应用工程类别的GUI程序开发,对算法策略有容错性表现;提升的、软件设计经验,初步具备面向对象软件设计思想,能针对性的应用事件驱动编程开发...
  • 窗口调用的函数的简短解释: 来自小甲鱼的窗口模板: /* -------------------------------------------------... 《Windows 程序设计(SDK)》视频教程 ------------------------------------------------------------

    窗口调用的函数的简短解释:
    在这里插入图片描述

    来自小甲鱼的窗口模板:

    /* -------------------------------------------------------------------
                        MyWindows.c -- 基本窗口模型
                                    《Windows 程序设计(SDK)》视频教程
    --------------------------------------------------------------------*/
    
    #include <windows.h>
    
    LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
    
    int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
    {
        static TCHAR szAppName[] = TEXT("MyWindows");
        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.hIcon = LoadIcon(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("这个程序需要在 Windows NT 才能执行!"), szAppName, MB_ICONERROR);
            return 0;
        }
    
        hwnd = CreateWindow(szAppName,
            TEXT("你好,世界!我来了"),
            WS_OVERLAPPEDWINDOW,
            CW_USEDEFAULT,
            CW_USEDEFAULT,
            CW_USEDEFAULT,
            CW_USEDEFAULT,
            NULL,
            NULL,
            hInstance,
            NULL);
    
        ShowWindow(hwnd, iCmdShow);
        UpdateWindow(hwnd);
    
        while (GetMessage(&msg, NULL, 0, 0))
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
    
        return msg.wParam;
    }
    
    LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
    {
        HDC hdc;
        PAINTSTRUCT ps;
        RECT rect;
    
        switch (message)
        {
        case WM_PAINT:
            hdc = BeginPaint(hwnd, &ps);
            GetClientRect(hwnd, &rect);
            DrawText(hdc, TEXT("大家好,这是我的第一个窗口程序!"), -1, &rect,
                DT_SINGLELINE | DT_CENTER | DT_VCENTER);
            EndPaint(hwnd, &ps);
            return 0;
    
        case WM_DESTROY:
            PostQuitMessage(0);
            return 0;
        }
    
        return DefWindowProc(hwnd, message, wParam, lParam);
    }
    
    展开全文
  • windows程序设计 中文版 【侯捷译】

    千次下载 热门讨论 2011-12-27 21:22:09
    windows程序设计 中文版 【侯捷译】 windows程序入门的必备之作, 看懂这一本即有很大长进
  • Windows程序设计》复习题

    万次阅读 多人点赞 2016-05-24 13:37:35
    Windows程序设计》复习题,包含windows程序设计和MFC程序设计的众多知识点。
  • Windows 程序设计 源码光盘

    热门讨论 2009-08-10 22:42:31
    Windows 程序设计 源码光盘 介绍了在Microsoft Windows 98、Microsoft Windows NT 4.0和Windows NT 5.0下程式写作的方法。这些程式用C语言编写并使用原始的Windows Application Programming Interface(API)。如在...
  • Windows程序设计》(第五版)

    千次下载 热门讨论 2012-12-25 10:26:40
    Windows程序设计》(第五版)
  • 请问windows程序设计中如何修改textmetric函数中前七个参数的值,请知道的告诉下,谢谢了
  • windows程序设计十一章ABOUT2中。要在对话框上绘图,实现过程是:程序在处理WM-COMMAND消息时调用painttheblock函数来绘图,painttheblock函数使子窗口控件无效并向控件窗口过程发送WM-PAINT消息,然后调用...
  • Windows程序设计(第五版)配套光盘源码

    千次下载 热门讨论 2011-11-07 11:09:26
    Windows程序设计(第五版)的配套光盘内容
  • 初学windows程序设计

    千次阅读 2010-12-19 23:32:00
    这两天在学windows程序设计,选择了那本外国的牛人写的经典教材。刚开始的时候看的迷迷糊糊,很多概念都是新遇到的,一边看不懂我就多看几遍,前三章只用了一下午就看了好几遍。但是效果不是太好,晚上在网上看了...
  • 最近在学习windows程序设计的创建窗口这方面的知识,有一些收获,现在将我所学到的内容记录下来,供大家参考。 本例将做一个类似txt文档窗口,可以对用户的键盘输入打印到该窗口上,并且有菜单栏可以单击菜单栏中的...
  • Windows程序设计之基本介绍

    千次阅读 2019-03-07 14:39:27
    其主要内容包括:SDK程序设计、MFC程序设计及ODBC数据库应用程序设计windows核心编程。 SDK程序设计包括: windows图形界面基础,主要是windows图形界面应用程序的结构以及windows消息响应机制。 GDI绘图,主要是...
  • 为什么要学习Windows程序设计

    千次阅读 2016-12-21 10:11:20
    为什么还要学习Windows程序设计?的确我们都在编写着Windows程序,这些程序可能是我们通过各种工具提供的控件或类库等编写的Windows程序,那样的程序并不是直接通过调用Windows API方式编写程序,这会带来一个副作用...
  • 这里所指的windows程序是传统的win32应用程序,使用windows API编写.首先,先来看一个简单的例子:#include<Windows.h> int WINAPI WinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ ...
  • Windows程序设计_第5版珍藏版.pdf

    热门讨论 2011-11-27 22:45:09
    Windows程序设计(第5版 珍藏版)》是一本经典的Windows编程圣经,曾经伴随着近50万Windows程序员步入编程殿堂,成长为IT时代的技术精英。作为Windows开发人员的必备参考,涵盖基础知识和中高级主题,全面地介绍了...
  • 此处提供的是Windows程序设计(第5版珍藏版)随书光盘,可直接在VS2008上调试。 基本信息 原书名: Programming Windows 5th edition 原出版社: Microsoft Press 作者: (美)Charles Petzold 译者: 方敏 张胜 梁...
  • Windows 程序设计(1):起步

    千次阅读 2017-08-14 15:29:49
    本系列文章基于 《Windows程序设计(第5版 珍藏版)》(美国)佩措尔德,译者是方敏、张胜、梁路平,清华大学出版社,存在自行增删部分。 从Windows 底层的 API 开始学习,涵盖基础知识和中高级主题,全面地介绍了...
  • Windows程序设计的第一个实例

    千次阅读 2016-07-28 10:38:31
    之前一直学习的是控制台程序设计,后来接触MFC程序设计,中间忽略了Windows程序设计的学习,所以在开始接触MFC的时候非常迷茫,不知道MFC框架下的各个函数的意义,不明白其内部的原理及机制,只大概了解使用了函数的...
  • #include <windows.h> LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ; int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { static TCHAR ...
  • MFC.Windows程序设计(第2版)修订版 高清pdf带源码 《MFC Windows程序设计》(第2版)(修订版)不仅扩展了已被认为是权威的关于Microsoft用于Windows API的功能强大的C++类库的阐述,还新增了有关COM、OLE和ActiveX的...
  • 句柄是Windows程序设计的基础,而消息机制又是Windows程序设计的核心。  众所皆知,Windows是一个事件驱动,基于消息的操作系统。Windows强调的是事件触发,并且事件之间是无序的。在DOS下,代码的执行都是井然有序...
  • Windows程序设计第五版,非常经典的书籍。内含Windows程序设计(第五版).pdf、中文版.chm、英文原版.chm和源码。欢迎下载。
  • 编写Windows窗口应用程序实现对话框与菜单的应用 1)编程实现如下应用程序,含有菜单,单击“新建”时弹出新建对话框(非模态对话框),单击...教材是windows程序设计 (用WM_PAINT 这样的消息编写)。请看清楚要求
  • 他在《Microsoft Systems Journal》1986年12月号上发表了第一篇关于Windows程序设计的杂志论文。从1986年到1995年,他为《PC Magazine》撰写“Environments”专栏,给读者介绍了Windows和OS/2程序设计的许多方面。 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 22,666
精华内容 9,066
关键字:

windows程序设计