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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.06.2010, 16:09   #1
coper
Пользователь
 
Регистрация: 16.11.2009
Сообщений: 28
По умолчанию Круглый Контрол

Нужно сделать контрол в форме круга ( например круглую кнопку). в С# использовал SetWindowRegion, а вот в с++ что-то я такого не нашел.. Надеюсь на помощь
coper вне форума Ответить с цитированием
Старый 02.06.2010, 18:05   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Плохо искали. В МСДН:
Цитата:
int SetWindowRgn(
HWND hWnd, // handle to window
HRGN hRgn, // handle to region
BOOL bRedraw // window redraw option
);
p51x вне форума Ответить с цитированием
Старый 02.06.2010, 18:30   #3
coper
Пользователь
 
Регистрация: 16.11.2009
Сообщений: 28
По умолчанию

Это то я как раз нашел. но ничего не происходит. Я немогу понять, что передавать в параметр hwnd. хочу сделать круглый image.
Код:
TImage* timg;
timg = new TImage(this);
timg->Parent=(this);
timg->Width=Radius*2;
timg->Height=Radius*2
... /бла бла бла

HRGN rgn = CreateEllipticRgn (timg->Left, timg->Top, timg->Width, timg->Height)
SetWindowRgn(Form6->Image1, rgn, true)
код компилится, но ничего не происходит. имейдж так и остается квадратным.
coper вне форума Ответить с цитированием
Старый 02.06.2010, 18:39   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

имейдж, не является окном.
киньте его на панель, и уже к ней примените регион
Panel1->Handle
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 02.06.2010, 18:59   #5
coper
Пользователь
 
Регистрация: 16.11.2009
Сообщений: 28
По умолчанию

Спасибо большое!
coper вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как связать через Binding контрол и статус DATAROW B@ND!T Общие вопросы .NET 0 08.02.2010 19:49
Контрол TAdvOfficeTabSet: как узнать индекс активной закладки? Ronaldo Общие вопросы Delphi 0 15.12.2009 21:58
контрол Maxxx 83 Помощь студентам 2 01.02.2009 14:08
Есть ли такой контрол в Дельфи? mutabor Общие вопросы Delphi 11 08.06.2008 14:08
Внедрить контрол в FlexGrid beryllium Общие вопросы .NET 0 21.02.2008 01:09