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

Зависаем-с конкретно... - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Операция инкремента и декримента на С++ http://www.cyberforum.ru/cpp-beginners/thread15220.html
Смотрите, написал я прогаммку в Ц++, вот отрывок от неё: ...int main () { int a,b,c,k; a=100;b=2;c=4; cout << "Operand 2=2"; for (k=1;k=5;k--) cout << "Rezuljtat:" << (a+k)%c Добавлено 49 секунд назад ... Всё хорошо компелируется, но запуская программу получается что выводиться:
C++ Компиляция консольных приложений VC 6.0 Может быть я совсем дурак, но программировать ни разу не пробовал и даже не знаю с чего начать. Вот купил книгу "Как программировать на С++" Х.М.Дейтел книга огромная, все отлично читается, но никак не могу понять, куда вводить этот код с пояснениями. Установил Visual Studio 6.0, запустил VC++, пишу код который в книге, а как посмотреть, что он делает, сообразить не могу, как его запустить в VC++... http://www.cyberforum.ru/cpp-beginners/thread15218.html
Написать прогу для вычисления корней квадратного уравнения C++
Очень прошу, помогите. На С++
Кроссворд C++
Я не из ленивых но время очень поджимает, работа и учеба в разных сферах всеже занятия не совместимые. ПОМОГИТЕ с задачей может ктото уже писал она не сложная, и частеько выдаеться для курсовых Написать программу «кроссворд». Пользователь может вводить выбранные буквы слова. Если слово введено правильно, оно отображается черным цветом, иначе – красным. Разработать формат текстового...
C++ вылазит ошибка http://www.cyberforum.ru/cpp-beginners/thread15206.html
пишу прогу со структурами вылазит ошибка(код ниже там указанно где) #include<stdio.h> #include<iostream.h> #include<conio.h> #include<stdlib.h> #include<fstream.h> void main() {
C++ Задачка со строками: вывести строки в обратном порядке Привет!!! Немогу написать прогу, которая выводит строки в обратном порядке!! Помогите!!! (((((( подробнее

Показать сообщение отдельно
Alukard Integral
0 / 0 / 0
Регистрация: 03.11.2008
Сообщений: 6

Зависаем-с конкретно... - C++

04.11.2008, 23:35. Просмотров 904. Ответов 3
Метки (Все метки)

Народ, объясните, пожалуйста, причину зависания. Как только нажимаю на диалог - виснет, зараза, и с концами. ОТдельно диалог работает нормально, а совместно с растром - виснет.
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
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
//   Демонстрация модального  диалога
#include <Windows.h> 
#include <String.h> 
#include <Stdio.h> 
#include "MyHeader.h"
 
LRESULT CALLBACK WindowFunc(HWND,UINT,WPARAM,LPARAM); BOOL CALLBACK DialogFunc(HWND,UINT,WPARAM,LPARAM);
 
char szWinName[] = "МоеОкно";  // Имя класса окна
HINSTANCE hInst;
 
HBITMAP hBit1;
HBITMAP hBit2;
int X=1, Y=1; 
 
int WINAPI WinMain(HINSTANCE hThisInst, 
                   HINSTANCE hPrevInst, 
                   LPSTR     lpszArgs, 
                   int       nWinMode) 
   {
   HWND     hwnd;
   MSG      msg;
   WNDCLASS wcl;
   HACCEL   hAccel;
   // Определение класса окна:
   wcl.hInstance=hThisInst;   // Дескриптор приложения
   wcl.lpszClassName=szWinName;  // Имя класса окна
   wcl.lpfnWndProc=WindowFunc;      // Функция окна
   wcl.style=0;                  // Стиль по умолчанию
   wcl.hIcon=LoadIcon(NULL,IDI_APPLICATION); // Иконка   
   wcl.hCursor=LoadCursor(NULL,IDC_ARROW);   // Курсор   
   wcl.lpszMenuName="MYMENU";                // Меню
   wcl.cbClsExtra=0;             // Без дополнительной
   wcl.cbWndExtra= 0;            // информации
   // Определить заполнение окна белым цветом   
   wcl.hbrBackground=
                  (HBRUSH)GetStockObject(WHITE_BRUSH);
   // Зарегистрировать класс окна
   if(!RegisterClass(&wcl))
      return 0;
   // Создать окно
   hwnd=CreateWindow(szWinName,     // Имя класса 
                     "Диалоги",     // Заголовок 
                     WS_OVERLAPPEDWINDOW,  // Стиль 
                     CW_USEDEFAULT, // Х-координата 
                     CW_USEDEFAULT, // Y-координата
                     CW_USEDEFAULT, // Ширина
                     CW_USEDEFAULT, // Высота 
                     HWND_DESKTOP,  // Нет родит. окна 
                     NULL,          // Нет меню
                     hThisInst, // Дескрип. приложения 
                     NULL);  // Без дополн. аргументов
 
   hInst=hThisInst; // Сохранить дескриптор приложения
   // Загрузить акселераторы:
   hAccel=LoadAccelerators(hThisInst,"MYMENU");
   // Показать окно и перерисовать содержимое: 
   ShowWindow(hwnd,nWinMode); 
   UpdateWindow(hwnd);   // Запустить цикл обработки сообщений: 
     
   hBit1=LoadBitmap(hThisInst,"MyBit2");  // Загр. растр
   hBit2=LoadBitmap(hThisInst,"MyBit3");  
 
   while(GetMessage(&msg,NULL,0,0)) 
      {
      if(!TranslateAccelerator(hwnd,hAccel,&msg))
         {
         TranslateMessage(&msg); // Использ. клавиатуру
         DispatchMessage (&msg); // Вернуться к Windows
         }
      }
      return msg.wParam;
   }
 
//  Следующая функция вызывается операционной системой 
//  Windows и получает в качестве параметров сообщения //  из очереди сообщений данного приложения
 
LRESULT CALLBACK WindowFunc (HWND   hwnd, 
                             UINT   message,                     
                             WPARAM wParam, 
                             LPARAM lParam)
   {
    HDC DC;
  HDC memDC;
// PAINTSTRUCT paintstruct;
 
   switch(message)
      {
         case WM_COMMAND: 
         switch(LOWORD(wParam))
         { 
     case IDM_DIALOG1:
         DialogBox(hInst,"MYDB",hwnd,
                 DialogFunc);
             break; 
           case IDM_HELP:
            MessageBox(hwnd, 
                "Помощь","Помощь",
                MB_OK) ;
            break;
         }
         break;
 
     case WM_PAINT:      // Перерисовка рабочей области         
                  DC=GetDC(hwnd);                   // Получить DC
                memDC=CreateCompatibleDC(DC);     // Совместимый DC
                SelectObject(memDC,hBit1);
                BitBlt(DC,X,Y,77,77,
                    memDC,0,0,SRCCOPY); // Вывод растра на экран
                ReleaseDC(hwnd,DC);        // Освободить DC
                DeleteDC(memDC);      
                   break;
 
            case  WM_LBUTTONDOWN:
                DC=GetDC(hwnd);                   // Получить DC
                memDC=CreateCompatibleDC(DC);     // Совместимый DC
                SelectObject(memDC,hBit1);
                BitBlt(DC,LOWORD(lParam),HIWORD(lParam),77,77,
                    memDC,0,0,SRCCOPY); // Вывод растра на экран
                ReleaseDC(hwnd,DC);        // Освободить DC
                DeleteDC(memDC);           // Освободить DC памяти
    
                  X = LOWORD(lParam);   // В X и Y записываются 
                  Y = HIWORD(lParam);   // текущие координаты мыши
                  InvalidateRect(hwnd,NULL,1); // Перерисов. экран
                   break;
                   
      case WM_DESTROY:     // Завершение программы   
         PostQuitMessage(0); 
         break;
 
      default:
         // Все сообщения, не обрабатываемые в данной 
         // функции, направляются на обработку по 
         // умолчанию
         return DefWindowProc(hwnd,   message, 
                              wParam, lParam);
      }
   return 0;
   }
 
// Простая функция диалога
BOOL CALLBACK DialogFunc (HWND   hdwnd,
                          UINT   message, 
                          WPARAM wParam, 
                          LPARAM lParam) 
   {
    HDC DC;
  HDC memDC;
 //  PAINTSTRUCT paintstruct;
   switch(message)
      {
      case WM_COMMAND:   // Обр-ка командных сообщений
         switch(LOWORD(wParam))
            {
        case WM_PAINT:      // Перерисовка рабочей области         
                  DC=GetDC(hdwnd);                   // Получить DC
                memDC=CreateCompatibleDC(DC);     // Совместимый DC
                SelectObject(memDC,hBit1);
                BitBlt(DC,350,100,77,77,
                    memDC,0,0,SRCCOPY); // Вывод растра на экран
                ReleaseDC(hdwnd,DC);        // Освободить DC
                DeleteDC(memDC);      
                   break;
 
            case IDD_RED:
                DC=GetDC(hdwnd);                   // Получить DC
                memDC=CreateCompatibleDC(DC);     // Совместимый DC
                SelectObject(memDC,hBit1);
                BitBlt(DC,350,100,77,77,
                    memDC,0,0,SRCCOPY); // Вывод растра на экран
                ReleaseDC(hdwnd,DC);        // Освободить DC
                DeleteDC(memDC);           // Освободить DC памяти
    
                MessageBox(hdwnd,
                    "Выбран Красный",
                    "Красный", MB_OK);
                InvalidateRect(hdwnd,NULL,1); // Перерисов. экран
 
 
               return 1; 
 
            case IDD_GREEN:
                DC=GetDC(hdwnd);                   // Получить DC
                memDC=CreateCompatibleDC(DC);     // Совместимый DC
                SelectObject(memDC,hBit2);
                BitBlt(DC,350,100,77,77,
                    memDC,0,0,SRCCOPY); // Вывод растра на экран
                
                ReleaseDC(hdwnd,DC);        // Освободить DC
                DeleteDC(memDC);           // Освободить DC памяти
                MessageBox(hdwnd,
                    "Выбран Зеленый",
                    "Зеленый", MB_OK);
                InvalidateRect(hdwnd,NULL,1); // Перерисов. экран
               return  1;
 
               
            case IDCANCEL:
                EndDialog(hdwnd,0);
                return 1; 
            }
      }
   return   0;
   }
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 07:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru