Ahoj potřeboval bych helpnout, momentálně se učím API a vyskytl se mi jeden problém bez kterého nemuhu pokračovat.
Jedná se o to že mi nejde vytvořit MAINMENU. BuildLog hlásí chybu v souboru zdroje.rc : error: 'MAINMENU' does not name a type
Zdrojové kódy:
zdroje.rc -
#include "zdroje_private.h"
#include "afxres.h"
//**************ZDROJE***********************
MAINMENU MENU DISCARDABLE
BEGIN
POPUP "&Soubor"
BEGIN
MENUITEM "&Nový", IDM_NEW
MENUITEM "&Otevřít", IDM_OPEN
MENUITEM SEPARATOR
POPUP "Ta&jemství"
BEGIN
MENUITEM "&Tajemná truhla", IDM_SECRET
END
END
POPUP "&Ostatní"
BEGIN
MENUITEM "&Nápověda", IDM_HELP
MENUITEM "&Konec", IDM_CLOSE
MENUITEM SEPARATOR
MENUITEM "&O Aplikaci", IDM_ABOUT
END
END
IDI_ICON ICON DISCARDABLE "grafika/ikona.ico"
IDC_CURSOR CURSOR DISCARDABLE "grafika/kur.cur"
zdroje_private.h -
#define IDI_ICON 101
#define IDC_CURSOR 102
#define IDM_NEW 40001
#define IDM_OPEN 40002
#define IDM_SECRET 40003
#define IDM_HELP 40004
#define IDM_CLOSE 40005
#define IDM_ABOUT 40006
main.cpp
#include <windows.h>
#include <iostream>
#include <string>
#include <cctype>
#include <fstream>
#include <cstring>
#include <cstdlib>
#include <time.h>
#include <math.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <winuser.h>
#include <clocale>
#include <locale.h>
#include <ctype.h>
#include <Vfw.h>
#include <conio.h>
#include <Lmcons.h>
#include "zdroje_private.h"
#include "zdroje.rc"
using namespace std;
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
{
TCHAR szAppName[] = TEXT("Nazdárek celičkej světe:-)");
HWND hWnd;
MSG msg;
WNDCLASSEX wc;
wc.cbSize = sizeof(wc);
wc.style = CS_HREDRAW | CS_VREDRAW;
wc.lpfnWndProc = WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon(hInstance,MAKEINTRESOURCE(IDI_ICON));
wc.hIconSm = NULL;
wc.hCursor = LoadCursor(hInstance,MAKEINTRESOURCE(IDC_CURSOR));
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName = "MAINMENU";
wc.lpszClassName = szAppName;
RegisterClassEx(&wc);
hWnd = CreateWindowEx(0,szAppName,
szAppName,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
800,
650,
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)
{
switch(message)
{
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hWnd, message, wParam, lParam);
}
Opravdu potřebuji help. Pomůže někdo?