Форум программистов, компьютерный форум CyberForum.ru

C++ и WinAPI

Войти
Регистрация
Восстановить пароль
 
Computershik
0 / 0 / 0
Регистрация: 03.08.2015
Сообщений: 65
#1

Переделать консольное приложение в оконное - C++ WinAPI

10.01.2017, 18:23. Просмотров 236. Ответов 5
Метки нет (Все метки)

Консольная игра лабиринт. Просьба переделать в оконное приложение, чтобы лабиринт рисовался на холсте.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
// labirint.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <windows.h>
#include <conio.h>
 
using namespace std;
 
void Porazhenie()
{
    system("cls");
    setlocale(LC_ALL, "rus");
    printf("%s", "\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t    Поражение!\n\n\n\n\n\n\n\n\n\n\n");
    system("pause");
    Sleep(1000);
    exit(0);
} void Pobeda()
{
    system("cls");
    setlocale(LC_ALL, "rus");
    printf("%s", "\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t     Победа!\n\n\n\n\n\n\n\n\n\n\n");
    system("pause");
    exit(0);
} int dataManagement(int management, int End)
{
    if (management == 1)
    {
        Porazhenie();
        End = 1;
    }
    if (management == 3)
    {
        Pobeda();
        End = 1;
    }
    management = 2;
    
    return management, End;
}
int main()
{
    // 1 - стенки лабиринта
    // 0 - путь
    int arr[24][24] = { { 1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, },
    { 1,0,1,0,0,1,0,1,0,0,0,1,1,1,1,0,0,0,0,1, },
    { 1,0,1,1,0,1,0,1,0,1,0,0,0,0,1,0,1,1,0,1, },
    { 1,0,0,0,0,0,0,1,0,1,1,1,1,0,1,0,0,1,0,1, },
    { 1,1,1,1,1,1,0,1,0,1,0,0,1,0,1,1,0,1,0,1, },
    { 1,0,0,1,0,0,0,0,0,1,1,0,0,0,0,0,0,1,0,1, },
    { 1,0,1,1,0,1,1,1,1,1,0,0,1,0,1,1,1,1,0,1, },
    { 1,0,0,0,0,0,0,0,0,1,1,1,1,0,1,0,0,0,0,1, },
    { 1,1,1,1,1,1,0,1,1,1,0,0,0,0,1,0,1,1,1,1, },
    { 1,1,0,0,0,1,0,0,1,1,0,1,1,1,1,0,0,0,0,1, },
    { 1,0,0,1,0,0,0,0,0,1,0,0,0,0,1,1,1,1,0,1, },
    { 1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,0,0,0,1, },
    { 1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1, },
    { 1,0,1,1,0,1,1,1,1,0,1,1,1,1,1,0,0,0,0,1, },
    { 1,0,1,0,0,0,1,0,0,0,1,0,0,0,0,0,1,1,0,1, },
    { 1,0,1,1,1,1,1,0,1,0,1,1,1,0,1,0,0,0,0,1, },
    { 1,0,1,0,0,0,1,0,1,0,0,0,1,1,1,1,1,1,1,1, },
    { 1,0,1,0,1,0,1,0,1,0,1,0,0,0,0,0,0,0,0,1, },
    { 1,0,1,0,1,0,1,0,1,0,1,1,1,1,1,1,1,1,0,1, },
    { 1,0,1,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,1, },
    { 1,0,1,0,1,0,0,0,1,0,1,1,1,1,1,1,0,1,0,1, },
    { 1,1,1,0,1,1,1,1,1,0,0,0,1,0,1,0,0,1,0,1, },
    { 1,1,1,0,0,0,0,0,0,1,1,0,0,0,1,0,1,1,0,1, },
    { 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1, } };
    unsigned short Kuda; int s1 = 0;
    int s2 = 1;
    int End(0);
    arr[s1][s2] = 2; do
    {
        system("cls");
        for (int i = 0; i < 24; i++) //переключение по строкам
        {
            for (int j = 0; j < 20; j++)// переключение по столбцам
            {
                if (arr[i][j] == 1)
                {
                    // вывести два раза символ (номер которого 176 в таблице аски) в консоль
                    cout << static_cast<char>(176);
                    cout << static_cast<char>(176);
                }
                if (arr[i][j] == 0 || arr[i][j] == 3)
                {
                    cout << "  ";
                }
                if (arr[i][j] == 2)
                {
                    cout << static_cast<char>(182);
                    cout << static_cast<char>(182);
                }
            }
            cout << endl;
        }
        Kuda = _getch();
        Kuda = _getch();   
        if (Kuda == 0)
            Kuda = _getch();
        if (Kuda == 72 || Kuda == 150 || Kuda == 230)
        {
            // Вверх
            arr[s1][s2] = 1;
            s1--;
            dataManagement(arr[s1][s2], End);
            arr[s1][s2] = 2;
            
        }
        if (Kuda == 80 || Kuda == 155 || Kuda == 235)
        {
            // Вниз
            arr[s1][s2] = 1;
            s1++;
            dataManagement(arr[s1][s2], End);
            arr[s1][s2] = 2;
        }
        if (Kuda == 77 || Kuda == 130 || Kuda == 262)
        {
            // Вправо
            arr[s1][s2] = 1;
            s2++;
            dataManagement(arr[s1][s2], End);
            arr[s1][s2] = 2;
        }
        if (Kuda == 75 || Kuda == 148 || Kuda == 235)
        {
            // Влево
            arr[s1][s2] = 1;
            s2--;
            dataManagement(arr[s1][s2], End);
            arr[s1][s2] = 2;
        }
    } while (1);
    _getch();
    return 0;
}
Добавлено через 1 час 28 минут
ХЕЛП!

Добавлено через 1 час 22 минуты
Может хватит игнорить? Мне нужно успеть до завтра!

Добавлено через 33 минуты
ХЕЕЕЛП!!!!!!

Добавлено через 45 минут
хелп!!!

Добавлено через 37 минут
ИДИОТЫ!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.01.2017, 18:23     Переделать консольное приложение в оконное
Посмотрите здесь:

Оконное приложение win32 project - C++ WinAPI
вот у меня есть некоторая программа и я хочу сделать это в виде оконных приложений (кнопка Ввод данных,Просмотр данных, Выход (см.код)) ...

Первое оконное приложение - вылетает с ошибкой - C++ WinAPI
Добрый день! На сайте MS по адресу https://msdn.microsoft.com/ru-ru/library/bb384843.aspx находится довольно доступный пример пример...

Написать оконное приложение нахождения экстремума функции - C++ WinAPI
Разработать программу наглядной демонстрации нахождения локального экстремума функции методом общего поиска Программа должна решать...

Написать оконное приложение, в котором созданы два дочерних окна - C++ WinAPI
Написать оконное приложение, в котором созданы два дочерних окна – поле редактирования и кнопка. Нажатие кнопки должно изменять заголовок...

Разработать в Visual C++ оконное приложение Win32 для работы с процессами - C++ WinAPI
Здравствуйте! Пытаюсь сделать приложение по предоставленным пунктам. Разработать в Visual C++ оконное приложение Win32, которое:...

Консольное приложение - C++ WinAPI
Здравствуйте уважаемые форумчани)) недавно начал изучать прогромирование под Win API. есть такая задача каторую надо реализовать в...

Сделать консольное приложение оконным - C++ WinAPI
Добрый день. Есть консольное приложение, типо виртуальный собеседник. Нужно что бы он общался не в консоли, а хотя бы в каком то окне,...

Как украсить консольное приложение Win32? - C++ WinAPI
Мне надо &quot;украсить&quot; консольную программу Win32, но как я не знаю!!! Подскажите пожалуйста!!!!

Как открыть консольное приложение в полном экране? - C++ WinAPI
Доброго времени суток, кодеры! Знает ли кто нибудь, как открывать консольные приложения в фуллскрине? (Не через свойства &gt; Ширина окна) Как...

Оконное сообщение из неосновного потока - C++ WinAPI
Нужно сообщить своему окну что пришли данные по сети.PostMessage неработает, как быть?

Запустить приложение, и получить результат, который вернуло отработавшее приложение - C++ WinAPI
Всем привет! Народ подскажите апишку(ки) для реализации следующей задачи. Мне нужно проверить соответствие введенного пользователем...

Как сменить курсор мыши (MS Visual C++ . консольное которое)? - C++ WinAPI
http://vsokovikov.narod.ru/New_MSDN_API/Cursor/fn_setsystemcursor.htm делаю так: ... int main() { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rao
852 / 405 / 119
Регистрация: 02.04.2014
Сообщений: 1,171
10.01.2017, 19:40     Переделать консольное приложение в оконное #2
во люди . ..(походу школота). . думают что им кто-то что обязан или должен бесплатно и срочно решить все их вопросы

с какой стати ?
Computershik
0 / 0 / 0
Регистрация: 03.08.2015
Сообщений: 65
10.01.2017, 19:41  [ТС]     Переделать консольное приложение в оконное #3
Цитата Сообщение от rao Посмотреть сообщение
думают что им кто-то что обязан
иначе цель этого форума?
Цитата Сообщение от rao Посмотреть сообщение
походу школота
выше бери
rao
852 / 405 / 119
Регистрация: 02.04.2014
Сообщений: 1,171
10.01.2017, 19:46     Переделать консольное приложение в оконное #4
Цель форума: общение и обмен опытом, а не напряги типа "сделайте мне то-то! . .ах не делаете? ну вы идиоты!"
Computershik
0 / 0 / 0
Регистрация: 03.08.2015
Сообщений: 65
10.01.2017, 19:48  [ТС]     Переделать консольное приложение в оконное #5
Цитата Сообщение от rao Посмотреть сообщение
не напряги типа
прост бесит, что от этого задания многое зависит, я конечно и сам попутно делать пытаюсь
в соседних темах отвечают, тут только сарказм...
nd2
1971 / 1557 / 542
Регистрация: 29.01.2016
Сообщений: 4,899
10.01.2017, 20:04     Переделать консольное приложение в оконное #6
Цитата Сообщение от Computershik Посмотреть сообщение
от этого задания многое зависит
Если многое, то раздел фриланса есть.
Yandex
Объявления
10.01.2017, 20:04     Переделать консольное приложение в оконное
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru