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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 25.08.2009, 17:42   #11
ds.Dante
Старожил
 
Аватар для ds.Dante
 
Регистрация: 06.08.2009
Сообщений: 2,992
По умолчанию

Цитата:
Сообщение от LaptevVV Посмотреть сообщение
В гугле фамилию Хогенсон наберите - это автор единственной переведенной на русский книжки по С++|CLI. Перевод плохой, сразу предупреждаю.
Есть еще Торстейнсон и Оберг - "Архитектура .NET и программирование на Visual C++". Но перевод, полагаю, еще хуже. ;)
ds.Dante вне форума
Старый 26.08.2009, 19:17   #12
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
Лампочка

Можно чуть расширить пример (Урок №2 ):

Код:
// Нужно добавить глобальные переменные:
BOOL draw=false;
static HPEN hPen1;

// И расширить функцию WndProc:
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
	switch (message)
	{
	case WM_CREATE:
		CreateWindow("Button", "My Button 1", WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, 5, 5, 120, 30, hWnd, (HMENU)1, NULL, NULL);
		hPen1=(HPEN)GetStockObject(WHITE_PEN);
		break;
	case WM_COMMAND:
		if ((HIWORD(wParam)==0) && (LOWORD(wParam)==1))
		{
			if (draw)
			{
				MessageBox(hWnd, "Redraw Off", "MessageBox", MB_OK | MB_ICONWARNING);
				draw=false;
			}
			else
			{
				MessageBox(hWnd, "Redraw On", "MessageBox", MB_OK | MB_ICONWARNING);
				draw=true;
			}
			RedrawWindow(hWnd, NULL, NULL, RDW_INVALIDATE | RDW_UPDATENOW | RDW_ERASE | RDW_FRAME | RDW_ALLCHILDREN);
		}
		break;
	case WM_PAINT:
		if (draw)
		{
			PAINTSTRUCT PaintStruct;
			HDC hDC;
			hDC = GetDC(hWnd);
			hDC=BeginPaint(hWnd, &PaintStruct);
			int i;
			int j;
			int color;
			j=0;
			for (j=0; j<=499; j=j+1)
			{
				i=0;
				for (i=0; i<=499; i=i+1)
				{
					color=RGB(i+i,i+j,j+j);
					SetPixel(hDC, i, j, color);
				}
			}
			SetBkColor(hDC, RGB(40, 40, 40));
			SetTextColor(hDC, RGB(255, 200, 0));
			TextOut(hDC, 10, 50, "Мой Текст!", 10);
			SelectObject(hDC, hPen1);
			MoveToEx(hDC, 50, 50, NULL);
			LineTo(hDC, 80, 200);
			LineTo(hDC, 200, 100);
			EndPaint(hWnd, &PaintStruct);
		}
		break;
	case WM_LBUTTONUP:
		MessageBox(hWnd, TEXT("Вы нажали левую кнопку мыши!"), TEXT("Произошло событие 'WM_LBUTTONUP'"), 0);
		break;
	case WM_DESTROY:
		PostQuitMessage(0);
		break;
	}
	return DefWindowProc(hWnd, message, wParam, lParam);
}
Только не надо сильно растягивать окошко - оно и так подвисает - в этом примере картинка рисуется далеко не самым быстрым способом, но для "начального" примера как раз подходит...
I am the First of Cyber Evolution...
I am the First to Program your Future...

Последний раз редактировалось DomiNick; 26.08.2009 в 20:15.
DomiNick вне форума
Старый 27.08.2009, 20:45   #13
Cakeinpanic
Пользователь
 
Аватар для Cakeinpanic
 
Регистрация: 10.05.2009
Сообщений: 21
По умолчанию

Создала проект как говорили, .сpp файл с кодом.
Попробовала запустить эту программу:
Код:
#include <windows.h>

int __stdcall _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd)
{
     MessageBox(0, TEXT("Hello, World!"), TEXT("Caption"), MB_OK); // Покажет окошко, с кнопкой ОК.

     return 0;
}
выдает ошибку:
1>LINK : fatal error LNK1561: entry point must be defined

в чем беда?
Cakeinpanic вне форума
Старый 27.08.2009, 21:14   #14
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Жалуется, что нет точки входа. Проект нужно собирать как Windows-приложение. Возможно, вы собираете как консольное.

Еще попробуйте заменить _tWinMain на WinMain.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.08.2009, 21:35   #15
Cakeinpanic
Пользователь
 
Аватар для Cakeinpanic
 
Регистрация: 10.05.2009
Сообщений: 21
По умолчанию

если просто Winmain, to говорит, что она не может быть перегружена.
проект создан верно.
Cakeinpanic вне форума
Старый 27.08.2009, 21:49   #16
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

А вот так попробуйте.
Код:
include <windows.h>

int __stdcall WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nShowCmd)
{
     MessageBox(0, TEXT("Hello, World!"), TEXT("Caption"), MB_OK);
     return 0;
}
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.08.2009, 23:28   #17
psycho-coder
Участник клуба
 
Аватар для psycho-coder
 
Регистрация: 06.04.2009
Сообщений: 1,524
По умолчанию

Всегда так писал:
Код:
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
  MessageBox(0, "Hello, World!", "Caption", MB_OK);
  return 0;
}
psycho-coder вне форума
Старый 30.08.2009, 12:58   #18
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от Cakeinpanic Посмотреть сообщение
Создала проект как говорили, .сpp файл с кодом.
Попробовала запустить эту программу:
Код:
#include <windows.h>

int __stdcall _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nShowCmd)
{
     MessageBox(0, TEXT("Hello, World!"), TEXT("Caption"), MB_OK); // Покажет окошко, с кнопкой ОК.

     return 0;
}
выдает ошибку:
1>LINK : fatal error LNK1561: entry point must be defined

в чем беда?
прошу прощения, забыл, что надо подключать tchar.h.
Это всё, для того чтобы легко делать юникод и анси версии программ, без изменений в коде.
netrino вне форума
Старый 31.08.2009, 00:06   #19
pro100-delphi
Пользователь
 
Аватар для pro100-delphi
 
Регистрация: 19.08.2009
Сообщений: 99
По умолчанию

Юзай лучше Borland C++ Biulder (походу неправильно написал Biulder)), не помню как по анг. строить ) , там интерфейс такой же как в Delphi 7 только язык программирования C++ а не Object Pascal, В Borland C++ Biulder ты создаёш форму и кидаеш туда кнопки, строки ввода и т.д. То что ты делал в универе называется консольное приложение и консольные приложения создаю только для изучения программирования, в основном это понять логику и т.д. а проги пишут в объектно ориентированных СИС.
pro100-delphi вне форума
Старый 31.08.2009, 00:19   #20
MaTBeu
Eclipse Foundation
Старожил
 
Аватар для MaTBeu
 
Регистрация: 19.09.2007
Сообщений: 2,604
По умолчанию

Цитата:
а проги пишут в объектно ориентированных СИС
Да-да-да консоль придумали дураки. Окна сами по себе появились...

Программа - я не вижу здесь слов "объектно-ориентированная". Программы бывают разные. А окно можно сделать без единого класса.

Чесное слово, если не знаете, лучше не стоит постить...
MaTBeu вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание проекта без использования БД swiks PHP 7 17.06.2009 13:24
Создание проекта c# в Visual C# 2008 Express Viteef Общие вопросы .NET 2 07.02.2009 16:02
Создание веб-проекта. d-funk Фриланс 2 12.01.2009 18:21
Создание игрового проекта Medium Gamedev - cоздание игр: Unity, OpenGL, DirectX 1 21.06.2008 21:31
Разработка проекта [Smarik] Софт 1 08.04.2008 17:22