OFF только-только начал изучать VC++ - вопрос знающим.

Разговоры на любые темы: вы можете обсудить здесь какой-либо сайт, найти единомышленников или просто пообщаться...
A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

OFF только-только начал изучать VC++ - вопрос знающим.

Сообщение A.A.Z. » 29.12.2003 (Пн) 22:52

Есть ли там что-то похожее на панель свойств объекта (как в VB / Delphi)??? :?: :oops: :|
Нет меня больше

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 29.12.2003 (Пн) 23:23

Хех... В ресурсах есть свойства :). Вот в редакторе ресурсов и юзай ;)
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 30.12.2003 (Вт) 18:59

А можно поподробнее? :roll:
Нет меня больше

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 30.12.2003 (Вт) 21:06

В редакторе ресурсов - правой кнопкой на элементе -> Propertes.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 31.12.2003 (Ср) 13:33

А шрифт у лейблов, текстбоксов и всех остальных только такой, как на форме??
Последний раз редактировалось A.A.Z. 31.12.2003 (Ср) 17:19, всего редактировалось 1 раз.
Нет меня больше

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 31.12.2003 (Ср) 14:10

Шрифт можно менять уже в коде - получать соответствующий объект и менять его шрифт. В редакторе ты можешь использовать только дефолтные настройки.
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 31.12.2003 (Ср) 17:18

Ясненько... А всё, что ни делается, только через API?
Нет меня больше

hCORe
VB - Экстремал
VB - Экстремал
Аватара пользователя
 
Сообщения: 2332
Зарегистрирован: 22.02.2003 (Сб) 15:21
Откуда: parent directory

ClassWizard

Сообщение hCORe » 31.12.2003 (Ср) 19:43

Ну... почти. Если MFC-приложение, то инкапсулировать функции API и ловить сообщения окон (WM_CLICK, WM_CHAR...) поможет тебе утилита ClassWizard (Ctrl+W или View>ClassWizard). Работать с ним очень легко, если нужен хелп - найдешь в инете (в отличие от VB, в WWW куча исходников на C++ :wink:) Да и MSDN неплохо описывает работу в MSVC++ 6 :)
Моду создают модоки, а распространяют модозвоны.

gaidar
System Debugger
System Debugger
 
Сообщения: 3152
Зарегистрирован: 23.12.2001 (Вс) 13:22

Сообщение gaidar » 31.12.2003 (Ср) 20:13

Визард в Даун!!!
The difficult I’ll do right now. The impossible will take a little while. (c) US engineers in WWII
I don't always know what I'm talking about, but I know I'm right. (c) Muhammad Ali

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 22.05.2004 (Сб) 21:49

gaidar,
1) Как файлы копировать? Юзал CopyFile("C:\1.txt", "C:\2.txt", TRUE), но ничего не произошло + GetLastError = 0
2) Как переводить данные из типа в тип, например, число в строку или обратно? static_cast<type> не всегда помогает... :(
3) Как запускать другие приложения? system("name.exe") это здорово, но открывается ДОСовское окно, и оно не закроется, пока не закроется приложение!
4) Как выходить мз программы? Знаю 1 способ: если проект создан на основе диалога (Dialog based), то можно вызывать OnOK(), но ведь это не всегда подходит?

Пока все :roll:
Нет меня больше

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 22.05.2004 (Сб) 22:28

1. слеш должен быть двойной (CopyFile("C:\\1.txt", "C:\\2.txt", TRUE); )
2. стандартно atoi, itoa
3. как и в васике shellexecute
:oops: :oops: :oops:
ps msdn он рулит :roll:
Последний раз редактировалось corgi 23.05.2004 (Вс) 12:59, всего редактировалось 1 раз.
Ничто так не ограничивает полёт мысли программиста, как компилятор

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 23.05.2004 (Вс) 4:26

В MainWndProc при получении WM_DESTROY вызываешь PostQuitMessage.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 23.05.2004 (Вс) 13:03

Спасибо,
corgi, плиз, поподробнее про пункт 2
GSerg, можно поподробнее?
Нет меня больше

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 23.05.2004 (Вс) 13:34

Код: Выделить всё
#define tozero(n) ZeroMemory((void*)&n, sizeof(n));

LRESULT CALLBACK WndProc(HWND hwnd, UINT umsg, WPARAM wParam, LPARAM lParam)
{
   switch(umsg)
   {
   case WM_DESTROY:
      PostQuitMessage(0);
      break;
   case WM_LBUTTONDOWN:
      ReleaseCapture();
      SendMessage(hwnd, WM_NCLBUTTONDOWN,HTCAPTION,NULL);
   }
   
   return DefWindowProc(hwnd,umsg,wParam, lParam);
}


int APIENTRY WinMain(HINSTANCE hInstance,
                     HINSTANCE hPrevInstance,
                     LPSTR     lpCmdLine,
                     int       nCmdShow)
{
   
   WNDCLASS ww; tozero(ww)

   ww.hbrBackground=(HBRUSH)(COLOR_DESKTOP+1) /*CreateSolidBrush(0xbe8400)*/;
   ww.lpfnWndProc=WndProc;
   ww.lpszClassName="MyCoolWindow";
   ww.hCursor=LoadCursor(NULL,IDC_ARROW);
   
   HWND MainWindow=CreateWindowEx(NULL,(LPCTSTR)RegisterClass(&ww),"My Cool Instance of window",WS_OVERLAPPEDWINDOW|WS_VISIBLE,10,10,400,200,NULL,NULL,NULL,NULL);

MSG msg;

   while (GetMessage (&msg, NULL, 0, 0))
   {
      TranslateMessage (&msg);
      DispatchMessage (&msg);   
   }   
   
   return 0;
}
Последний раз редактировалось GSerg 23.05.2004 (Вс) 13:40, всего редактировалось 1 раз.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 23.05.2004 (Вс) 13:37

подробней:
int atoi( const char *string); - конвертит строку в число
itoa соответственно наоборот
ps в cstring есть замечательные методы типа format, formatmessage для конвертирования в строку
Ничто так не ограничивает полёт мысли программиста, как компилятор

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 23.05.2004 (Вс) 23:44

corgi, я понял, спасибо!
GSerg, :shock:, а это куда пихать??
Нет меня больше

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 24.05.2004 (Пн) 9:15

Создай новый workspace - Win32 application. И прямо туда :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 24.05.2004 (Пн) 11:53

Понял! :lol:
Нет меня больше

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 27.05.2004 (Чт) 19:24

corgi писал(а):подробней:
int atoi( const char *string); - конвертит строку в число
itoa соответственно наоборот
ps в cstring есть замечательные методы типа format, formatmessage для конвертирования в строку

Извиняюсь за тупость :oops:, но можно еще подробнее? :roll:
Нет меня больше

corgi
ToyMan
ToyMan
 
Сообщения: 1367
Зарегистрирован: 01.10.2002 (Вт) 9:59
Откуда: Россия, Москва

Сообщение corgi » 27.05.2004 (Чт) 20:40

подроней о чем :?:
Ничто так не ограничивает полёт мысли программиста, как компилятор

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 27.05.2004 (Чт) 21:37

int atoi( const char *string); - конвертит строку в число
itoa соответственно наоборот
Как их объявлять и как ими пользоваться? :oops: Я пытался - char itoa(int, const char *, int);, но, ес-сно, ошибка... :oops:
Если можно, объявление и пример... :roll:
Нет меня больше

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 28.05.2004 (Пт) 9:13

Мануал по языку-то читал? :)

char* mystring=new char[10];
itoa(777, mystring, 10);
MessageBox(0,mystring,чего там ещё...);
delete[] mystring;
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

A.A.Z.
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
 
Сообщения: 3035
Зарегистрирован: 30.06.2003 (Пн) 13:38

Сообщение A.A.Z. » 29.05.2004 (Сб) 21:05

Не-а, не читал 8)
Спасибо! :D
Нет меня больше


Вернуться в Народный треп

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 66

    TopList