Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kody_programm_k_voprosam.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
779 Кб
Скачать
☆

If(!hPreInst){

///…

wcApp.lpszMenuName = MAKEINTRESOURCE(IDR_MENU1);

///…

if(!RegisterClass(&wcApp))

return 0;

}

///…

while(GetMessage(&lpMsg, NULL, 0, 0)){

///…

}

///…

}

LRESULT CALLBACK WINAPI WndProc(HWND hWnd, UINT messg,

WPARAM wParam, LPARAM lParam)

{

///…

TEXTMETRIC tm;

///…

WCHAR lpszSearchFile[] = L"*.*";

int i ;

int charht = 16;

static int OldVPos, NewVPos;

static int yClientView;

switch(messg){

case WM_CREATE:

hdc = GetDC(hWnd);

GetTextMetrics(hdc, &tm);

charht = tm.tmHeight + tm.tmExternalLeading;

ReleaseDC(hWnd, hdc);

SetScrollPos(hWnd, SB_VERT, NewVPos, FALSE);

SetScrollRange(hWnd, SB_VERT, 0, SCROLLLINES, TRUE);

InvalidateRect(hWnd, NULL, TRUE);

break;

case WM_SIZE:

yClientView = HIWORD(lParam);

case WM_VSCROLL:

#ifdef _WIN32

switch(LOWORD(wParam)){

#else

switch(wParam){

#endif

case SB_PAGEDOWN:

OldVPos = GetScrollPos(hWnd, SB_VERT);

SetScrollPos(hWnd, SB_VERT, (OldVPos + 10), TRUE);

NewVPos = GetScrollPos(hWnd, SB_VERT);

break;

case SB_LINEDOWN:

OldVPos = GetScrollPos(hWnd, SB_VERT);

SetScrollPos(hWnd, SB_VERT, (OldVPos + 1), TRUE);

NewVPos = GetScrollPos(hWnd, SB_VERT);

break;

case SB_PAGEUP:

OldVPos = GetScrollPos(hWnd, SB_VERT);

SetScrollPos(hWnd, SB_VERT, (OldVPos - 10), TRUE);

NewVPos=GetScrollPos(hWnd, SB_VERT);

break;

case SB_LINEUP:

OldVPos = GetScrollPos(hWnd, SB_VERT);

SetScrollPos(hWnd, SB_VERT,(OldVPos - 1), TRUE);

NewVPos = GetScrollPos(hWnd, SB_VERT);

break;

case SB_THUMBPOSITION:

OldVPos = GetScrollPos(hWnd, SB_VERT);

#ifdef _WIN32

NewVPos = HIWORD(wParam);

#else

NewVPos = wParam;

#endif

SetScrollPos(hWnd, SB_VERT, NewVPos, TRUE);

break;

}

InvalidateRect(hWnd, NULL, TRUE);

break;

case WM_COMMAND:

switch(LOWORD(wParam)){

case IDM_AFILES:

wcscpy(szMyfile, L"a:");

break;

case IDM_BFILES:

wcscpy(szMyfile, L"b:");

break;

case IDM_CFILES:

wcscpy(szMyfile, L"c:\\");

break;

case IDM_DFILES:

wcscpy(szMyfile, L"d:\\");

break;

default:

break;

}

InvalidateRect(hWnd, NULL, TRUE);

break;

case WM_PAINT:

hdc = BeginPaint(hWnd, &ps);

//-----Начало фрагмента пользователя-----

i = 0;

SetCurrentDirectory(szMyfile);

hFindFile = FindFirstFile((LPCTSTR)lpszSearchFile, &ffd);

swprintf(szMessage,

L"%3d %s",

i, ffd.cFileName);

TextOut(hdc, 0, charht * (i - NewVPos),

szMessage, (int)wcslen(szMessage));

i++;

for(;;){

fRC = FindNextFile(hFindFile, &ffd);

if(fRC==FALSE){

FindClose(hFindFile);

break;

}

else

swprintf(szMessage,

L"%3d %s",

i, ffd.cFileName);

TextOut(hdc, 0, charht * (i - NewVPos),

szMessage, (int)wcslen(szMessage));

i++;

}

//-----Конец фрагмента пользователя-----

ValidateRect(hWnd, null);

EndPaint(hWnd, &ps);

break;

case WM_DESTROY:

PostQuitMessage(0);

break;

default:

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

}

return(0);

}

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

// DIALOG1

// RESOURCE.H

//{{NO_DEPENDENCIES}}

// Microsoft Visual C++ generated include file.

// Used by dialog1.rc

//

#define IDR_MENU1 102

#define IDD_DIALOGBAR 103

#define IDC_BUTTON1 1002

//#define IDOK 1004

#define IDM_ABOUT 40001

#define ID_LNFORMATION_EXIT 40002

#define IDM_EXIT 40003

#define IDD_AAAAA 40003

#define IDD_ABOUTBOX 40003

// *.RC

/////////////////////////////////////////////////////////////////////////////

//

// Menu

//

IDR_MENU1 MENU

BEGIN

POPUP "&lnformation"

BEGIN

MENUITEM "&About Box...", 40001

MENUITEM "E&xit", IDM_EXIT

END

END

/////////////////////////////////////////////////////////////////////////////

//

// Dialog

//

IDD_ABOUTBOX DIALOGEX 0, 0, 234, 75

STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | WS_POPUP | WS_CAPTION | WS_SYSMENU

CAPTION "AboutDiaBox"

FONT 8, "MS Shell Dlg", 400, 0, 0x1

BEGIN

DEFPUSHBUTTON "Okay",IDOK,154,14,50,14

LTEXT "ABOUT Dialog Box",IDC_STATIC,30,15,69,8

LTEXT "by",IDC_STATIC,30,23,69,8

LTEXT "Beloded N.I.",IDC_STATIC,30,32,69,8

LTEXT "СТУДЕНТ - ДВИГАТЕЛЬ ПРОГРЕССА БЕЗ ТОРМОЗОВ",IDC_STATIC,30,51,176,8

END

// *.СPP

// dialogl.cpp

// Создает простое диалоговое окно ABOUT

//

#include <windows.h>

//#include "dialogl.h"

#include "resource.h"

#include <tchar.h> // _T

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

BOOL CALLBACK AboutDiaProc(HWND, UINT, WPARAM, LPARAM);

char szProgName[] = "ProgName";

//char szApplName[] = "AboutMenu";

int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPreInst,

LPSTR lpszCmdLine,int nCmdShow)

{

HWND hWnd;

MSG lpMsg;

WNDCLASS wcApp;

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]