Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.12.2011, 16:45   #1
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
Стрелка Visual C 6.0. -> Паскаль

Здравствуйте, помогите пожалуйста перевести программу с Visual C 6.0. на язык Паскаль. Суть программы состоит в создании новых окон виндовс.

Цитата:
http://proger.h10.ru
*/

#include <windows.h>

// Объявление оконной процедуры
LRESULT CALLBACK WndProc(HWND hWnd,UINT msg,
WPARAM wParam,LPARAM lParam);

int WINAPI WinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int iCmdShow)
{
const char szClassName[]="MyApp"; // Имя оконного класса
WNDCLASSEX wc;
MSG msg;
HWND hWnd;

// Заполняем поля структуры wc
wc.cbSize=sizeof(wc); // Размер структуры wc
wc.cbClsExtra=0; // дополнительная память для класса
wc.cbWndExtra=0; // дополнительная память для окна
wc.hbrBackground=CreateSolidBrush(R GB(135,163,187)); // Цвет фона окна
wc.hCursor=LoadCursor(0,IDC_ARROW); // Определяем курсор мыши
wc.hIcon=LoadIcon(hInstance,IDI_APP LICATION); // Иконка
wc.hIconSm=LoadIcon(hInstance,IDI_A PPLICATION); // Маленькая иконка
wc.hInstance=hInstance; // Хэндл экземпляра приложения
wc.lpfnWndProc=WndProc; // Имя оконной процедуры
wc.lpszClassName=szClassName; // Имя оконного класса
wc.lpszMenuName=NULL; // Имя меню
wc.style=CS_HREDRAW | CS_VREDRAW; // Стиль


// Регистрация нового оконного класса
if(!RegisterClassEx(&wc))
{
MessageBox(NULL,"Не могу зарегить класс","Ошибка",MB_OK | MB_ICONSTOP);
return -1;
}

// Создание окна
hWnd=CreateWindow( szClassName, // Имя оконного класса
"МоЁ Окно", // Заголовок окна
WS_OVERLAPPEDWINDOW, // Стиль окна
CW_USEDEFAULT, // Координата x
CW_USEDEFAULT, // Координата y
CW_USEDEFAULT, // Ширина окна
CW_USEDEFAULT, // Высота окна
0, // Хэндл окна родителя
NULL, // Хэндл меню
hInstance, // Хэндл экземпляра приложения
NULL); // Дополнительные параметры

if(hWnd==NULL)
{
MessageBox(NULL,"Не могу создать новое окно","Ошибка",MB_OK | MB_ICONSTOP);
return -1;
}

ShowWindow(hWnd,SW_SHOW); // Окно должно быть показано
UpdateWindow(hWnd); // Оконной процедуре посылается сообщение WM_PAINT

// Цикл обработки сообщений
while (GetMessage(&msg,0,0,0))
{
TranslateMessage(&msg); // Сообщения от клавиатуры
DispatchMessage(&msg); // Запуск оконной процедуры
}

return 0;
}


// Оконная процедура

LRESULT CALLBACK WndProc(HWND hWnd,
UINT msg,
WPARAM wParam,
LPARAM lParam)
{
HDC hDC;
PAINTSTRUCT ps;

switch(msg)
{

case WM_PAINT:
{
hDC=BeginPaint(hWnd,&ps);

// Что-то рисуется

EndPaint(hWnd,&ps);
}
break;

case WM_DESTROY:
PostQuitMessage(0);
break;

default:
return DefWindowProc(hWnd,msg,wParam,lPara m);
}

return 0;
sllh_111 вне форума Ответить с цитированием
Старый 10.12.2011, 17:05   #2
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

у меня для тебя плохая новость...
rUs_LAN вне форума Ответить с цитированием
Старый 10.12.2011, 17:10   #3
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
По умолчанию

какая, если не секрет?)
sllh_111 вне форума Ответить с цитированием
Старый 10.12.2011, 17:26   #4
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

ну начнем с самого банального, в паскале нет классов.

мне вот интересно нафига тебе надо переводить тот код на паскаль, просто не могу придумать причину
rUs_LAN вне форума Ответить с цитированием
Старый 10.12.2011, 17:33   #5
sllh_111
Форумчанин
 
Регистрация: 10.02.2010
Сообщений: 137
По умолчанию

Просто нужна программа, для создание окна виндовс(там где свернуть, развернуть и закрыть) внутри которого будет картинкой как фон, а нашел только вот это. (Другими словами, учитель сдавит зачет за тесты, учить слишком много, вот и хочу сделать результирующее окно теста. Фоновым рисунком рабочего стола сделать все это никак нельзя, админы доступ ограничели )

не знаю даже что и делать, может кто-нибудь поможет решить эту проблему?
sllh_111 вне форума Ответить с цитированием
Старый 10.12.2011, 17:39   #6
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

я слишком плохо знаю русский язык чтобы понять о чем ты говоришь. И при чем тут паскаль и WinAPI ...
rUs_LAN вне форума Ответить с цитированием
Старый 10.12.2011, 19:16   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
ну начнем с самого банального, в паскале нет классов.
Есть, только они называются объектами.
Цитата:
Просто нужна программа, для создание окна виндовс
А вот для этого паскаль совсем не подходит (ну или уточни его версию)
FreePascal или Делфи - другое дело.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Visual C++, Visual C#, Visual basic .Net, или Microsoft.Net Что лучше? _PROGRAMM_ Общие вопросы .NET 14 10.10.2012 19:24
Проблема с windows visual styles в Visual studio 2008 express. [awa Visual C++ 2 09.01.2010 06:05
Как перевести проект из Visual C++ 2003 в Visual C++ 2008? iukash Visual C++ 8 17.04.2009 22:36
Visual c++ 2005 и Visual c++ 6 это разные версии или нет? Руслантус Свободное общение 3 30.11.2007 19:42