- •Int pascal WinMain (hinstance hInst, hinstance hPreInst,
- •If(!hPreInst)
- •Int pascal WinMain (hinstance hInst, hinstance hPreInst,
- •If(!hPreInst)
- •ValidateRect(hWnd, null);
- •ValidateRect(hWnd, null);
- •ValidateRect(hWnd, null);
- •If(!hPreInst) {
- •ValidateRect(hWnd, null);
- •If(!hPreInst){
- •If(!hPreInst){
- •ValidateRect(hWnd, null);
- •If(!hPreInst){
- •If(!hPreInst){
- •ValidateRect(hWnd, null);
- •If(!hPreInst){
- •ValidateRect(hWnd, null);
- •If(!hPreInst){
- •ValidateRect(hWnd, null);
- •If(!hPreInst){
- •// Resource.H
- •If(!hPreInst)
If(!hPreInst){
///…
wcApp.lpszMenuName = MAKEINTRESOURCE(IDR_MENU1);
///…
if(!RegisterClass(&wcApp))
///…
}
///…
while(GetMessage(&lpMsg, NULL, 0, 0)){
///…
}
///…
}
LRESULT CALLBACK WINAPI WndProc(HWND hWnd, UINT messg,
WPARAM wParam, LPARAM lParam)
{
///…
static int xClientView, yClientView;
switch(messg){
case WM_COMMAND:
#ifdef _WIN32
switch(LOWORD(wParam)){
#else
switch(wParam){
#endif
case IDM_SMALL:
wSize=30;
break;
case IDM_MEDIUM:
wSize=60;
break;
case IDM_LARGE:
wSize=90;
break;
default:
break;
}
InvalidateRect(hWnd, NULL, TRUE);
break;
case WM_SIZE:
///…
break;
case WM_PAINT:
hdc=BeginPaint(hWnd, &ps);
//-----Начало фрагмента пользователя-----
SetMapMode(hdc, MM_ISOTROPIC);
SetWindowExtEx(hdc, 500, 500, NULL);
SetViewportExtEx(hdc, xClientView, -yClientView, NULL);
SetViewportOrgEx(hdc, xClientView / 2, yClientView / 2, NULL);
Rectangle(hdc, -(wSize * 2), -wSize, (wSize * 2), wSize);
TextOut(hdc, -(wSize*2), (wSize * 2) + 20, (LPCWSTR)_T("A Sized Rectangle"), 17);
//-----Конец фрагмента пользователя-----
ValidateRect(hWnd, null);
///…
break;
case WM_DESTROY:
///…
break;
default:
///…
}
return(0);
}
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// menu3.cpp
//resource.h
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by menu3.rc
//
#define IDR_MENU1 101
#define ID_TOTALDISKSPACE_FREEDISKSPACE 40001
#define ID_TOTALDISKSPACE_TOTALDISKSPACE 40002
#define ID_DISK_CURRENTDRIVEANDPATH 40003
#define ID_DISK_WINDOWSVERSION 40004
#define ID_TIME_SYSTEMTIME 40005
#define ID_TIME_SYSTEMDATE 40006
#define ID_ 40007
#define ID_TDS 40008 // общий объем дискового пространства
#define IDM_FDS 40009 //объем свободного дискового пространства
#define IDM_DD 40010 // принятый по умолчанию накопитель
#define ID_TIME_SYSTEMTIME40011 40011
#define IDM_TIME 40012 // текущее время
#define IDM_DATE 40013 // текущая дата
#define IDM_TDS 40014
#define IDM_WV 40015 // текущая версия Windows
// menu3.cpp
// menu3.rc
// Microsoft Visual C++ generated resource script.
//
#include "resource.h"
///…
/////////////////////////////////////////////////////////////////////////////
//
// Menu
//
IDR_MENU1 MENU
BEGIN
POPUP "&Disk_Information"
BEGIN
MENUITEM "&Total Disk Space", 40009
MENUITEM "&Free Disk Space", IDM_TDS
MENUITEM "&Current Drive and Path", 40010
MENUITEM SEPARATOR
MENUITEM "&Windows Version", IDM_WV
END
POPUP "&Time/Date_Information"
BEGIN
MENUITEM "System T&ime", IDM_TIME
MENUITEM "System &Date", 40013
END
END
///…
// menu3.cpp
// menu3.cpp
// Приложение, иллюстрирующее использование меню
// для получения информации о компьютере.
//
///…
#include "resource.h"
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
char szProgName[] = "ProgName";
char szApplName[] = "IDR_MENU1";
wchar_t szMessage[80];
short sLength;
int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPreInst,
LPSTR lpszCmdLine,int nCmdShow)
{
///…
