Модераторы: feodorv, GremlinProg, xvr, Fixin
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> панель чистыми средствами Win32 API 
V
    Опции темы
Dron32
Дата 13.3.2008, 18:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Парни, подскажите, как создать панель, подобную той что можно создать в Builder'e простым нажатием кнопки, в Visual'е чистыми средставми Win32 API. Заранее, большое спасибо
PM MAIL   Вверх
Мурлыкатам_
Дата 14.3.2008, 13:50 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 265
Регистрация: 5.2.2007
Где: город-герой Минск

Репутация: нет
Всего: 2



Че за панель?
Если на вин апи, явно она уже есть, нужно просто узнать название ее класса и делов то... А создастся как и все контролы создаются...

Это сообщение отредактировал(а) Мурлыкатам_ - 14.3.2008, 13:51


--------------------
Хочешь что-то сделать - сделай это сам или попроси помощи на винграде smile
user posted image
PM MAIL ICQ   Вверх
BorisVorontsov
Дата 15.3.2008, 00:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Thinker
**


Профиль
Группа: Комодератор
Сообщений: 714
Регистрация: 3.11.2005
Где: Молдавия, г. Киши нёв

Репутация: 4
Всего: 10



Цитата(Dron32 @  13.3.2008,  18:37 Найти цитируемый пост)
 той что можно создать в Builder'e простым нажатием кнопки


Вот что делает с людьми кнопкокидательство... Если речь идет о TPanel -- CreateWindow[Ex] STATIC


--------------------
[code=cpp]
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;
[/code]
PM MAIL ICQ GTalk   Вверх
Earnest
Дата 17.3.2008, 09:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 33
Всего: 183



BorisVorontsov, точно. Нужно запретить законодательно использование визардов программистам со стажем меньше, скажем, 5 лет. Как вредное для умственного здоровья. smile 


--------------------
...
PM   Вверх
SABROG
Дата 17.3.2008, 19:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Hacker
****


Профиль
Группа: Завсегдатай
Сообщений: 2481
Регистрация: 18.9.2006

Репутация: нет
Всего: 91



Цитата(Earnest @ 17.3.2008,  09:45)
BorisVorontsov, точно. Нужно запретить законодательно использование визардов программистам со стажем меньше, скажем, 5 лет. Как вредное для умственного здоровья. smile

Просто надо ввести лицензию на программирование, которую обновлять раз в 5 лет сдавая экзамен  smile 


--------------------
Национальная группа Russian Federation на QtCentre.
PM MAIL   Вверх
Dron32
Дата 17.3.2008, 19:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



В таком случаи почему отрисовывается эта панель. Вот кусок кода:

BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
   HWND hWnd, hPanel;
 
   Rect->right = GetSystemMetrics(SM_CXSCREEN);
   Rect->bottom = GetSystemMetrics(SM_CYSCREEN);

   hInst = hInstance; // Store instance handle in our global variable

   hWnd=CreateWindowEx(0, szWindowClass, "Test",
    WS_OVERLAPPEDWINDOW | WS_SYSMENU | WS_MINIMIZEBOX,
    Rect->right/6, Rect->bottom/4, Rect->right/2+Rect->right/6, Rect->bottom/2,
    NULL,NULL,hInstance,NULL);

   if (!hWnd)
   {
      return FALSE;
   }

   ShowWindow(hWnd, nCmdShow);
   UpdateWindow(hWnd);

   hPanel = CreateWindow("STATIC", "", WS_CHILDWINOW,
       CW_USEDEFUALT, CW_USEDEFUALT, 100, 100, hWnd, NULL, hInstance, NULL);

   if(!hPanel)
       return FALSE;

   ShowWindow(hPanel, nCmdShow);
   UpdateWindow(hPanel);

}
PM MAIL   Вверх
586
Дата 17.3.2008, 19:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2243
Регистрация: 8.5.2006

Репутация: 39
Всего: 146



Стиля WS_BORDER не хватает. Или WS_EX_CLIENTEDGE (экс-стиль для CreateWindowEx).

Цитата(Dron32 @  17.3.2008,  19:31 Найти цитируемый пост)
ShowWindow(hPanel, nCmdShow);
   UpdateWindow(hPanel);

Это здесь лишнее. Задай стиль WS_VISIBLE.

Это сообщение отредактировал(а) 586 - 17.3.2008, 19:59
PM   Вверх
Dron32
Дата 18.3.2008, 09:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 13.3.2008

Репутация: нет
Всего: нет



Спасибо большое, парни. Я только начинаю с этими делами отгребать, так что буду обращаться сюда постоянно со столь же простыми вопросами (а может и не очень). Думаю, что может еще кому пригодится
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Системное программирование и WinAPI"
Fixin
GremlinProg
xvr
feodorv
  • Большое количество информации и примеров с использованием функций WinAPI можно найти в MSDN
  • Описание сообщений, уведомлений и примеров с использованием компонент WinAPI (BUTTON, EDIT, STATIC, и т.п.), можно найти в MSDN Control Library
  • Непосредственно, перед созданием новой темы, проверьте заголовок и удостоверьтесь, что он отражает суть обсуждения.
  • После заполнения поля "Название темы", обратите внимание на наличие и содержание панели "А здесь смотрели?", возможно Ваш вопрос уже был решен.
  • Приводите часть кода, в которой предположительно находится проблема или ошибка.
  • Если указываете код, пользуйтесь тегами [code][/code], или их кнопочными аналогами.
  • Если вопрос решен, воспользуйтесь соответствующей ссылкой, расположенной напротив названия темы.
  • Один топик - один вопрос!
  • Перед тем как создать тему - прочтите это .

На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы .


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема »


 




[ Время генерации скрипта: 0.0516 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.