OptionButton

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

OptionButton

Сообщение Kovu » 13.01.2006 (Пт) 21:02

Как поместить на OptionButton рисунок, при этом оставив его похожим на оптион, а не на стандартную кнопку(когда делаешь Style=1(graphical), то происходит это неприятное явление) ?
Если всё делать своими ручками, они скоро отвалятся !

Alexanbar
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1727
Зарегистрирован: 13.04.2004 (Вт) 23:04
Откуда: Волгоградская обл.

Сообщение Alexanbar » 14.01.2006 (Сб) 0:46

Поместить Picturebox на OptionButton.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 14.01.2006 (Сб) 12:06

Гм, а иначе никак? :roll:
Если всё делать своими ручками, они скоро отвалятся !

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 14.01.2006 (Сб) 14:53

И иначе можно, но тебе не понравится.
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;

DirectXManiac
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1543
Зарегистрирован: 03.11.2005 (Чт) 13:32
Откуда: из DirectX SDK

Сообщение DirectXManiac » 14.01.2006 (Сб) 17:02

Там код просто строк на 50 как минимум, атак прсто! :wink:
#define ROFL 0xDDDD

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 14.01.2006 (Сб) 18:57

BV писал(а):И иначе можно, но тебе не понравится.

Да мне всё равно как лишь бы сделать :)
Дайте код пожаалуйста :roll:
С чего ты решил, что мне не понравится , главное -это чтобы работало
Если всё делать своими ручками, они скоро отвалятся !

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 14.01.2006 (Сб) 19:10

Почитай про OWNER_DRAW и поймешь, что не понравится.
Lasciate ogni speranza, voi ch'entrate.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 15.01.2006 (Вс) 12:50

А можно кодик показать по рисованию кругленькой этой штуки :) :roll:
Если всё делать своими ручками, они скоро отвалятся !

Kostyan
Постоялец
Постоялец
 
Сообщения: 439
Зарегистрирован: 20.09.2002 (Пт) 4:14
Откуда: Россия, Уссурийск

Сообщение Kostyan » 16.01.2006 (Пн) 12:13

А не проще-ли использовать Image? Можешь сделать его хоть в виде лампочки.
Нет ничего невозможного для человека с интеллектом.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 16.01.2006 (Пн) 14:08

Kostyan писал(а):А не проще-ли использовать Image? Можешь сделать его хоть в виде лампочки.

Ибо 1-у него нет hDc, т.к. это вообще не окно
2- мне надо функции Option'a :)
Если всё делать своими ручками, они скоро отвалятся !

Kostyan
Постоялец
Постоялец
 
Сообщения: 439
Зарегистрирован: 20.09.2002 (Пт) 4:14
Откуда: Россия, Уссурийск

Сообщение Kostyan » 17.01.2006 (Вт) 6:07

А зачем тебе hdc? Нажал юзер мышкой по имеджу - поставил картинку соответствующую нажатому состоянию, кликнул ещё раз - вернул исходную. Изображения состояний можно хранить в ресурсе. А само состояние (Value) хранить в свойстве Tag. Конечно нельзя будет работать клавиатурой, но такова плата.
Нет ничего невозможного для человека с интеллектом.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 17.01.2006 (Вт) 14:06

Kostyan писал(а):А зачем тебе hdc? Нажал юзер мышкой по имеджу - поставил картинку соответствующую нажатому состоянию, кликнул ещё раз - вернул исходную. Изображения состояний можно хранить в ресурсе. А само состояние (Value) хранить в свойстве Tag. Конечно нельзя будет работать клавиатурой, но такова плата.

Понимаешь, для BitBlt'a надо hDc (Чтоб оптион как бы сливался с формой), так что уж лучше самому рисовать :roll:
Если всё делать своими ручками, они скоро отвалятся !

Kostyan
Постоялец
Постоялец
 
Сообщения: 439
Зарегистрирован: 20.09.2002 (Пт) 4:14
Откуда: Россия, Уссурийск

Сообщение Kostyan » 18.01.2006 (Ср) 11:31

Да, видимо я совершенно тебя не понимаю. Зачем hdc, когда можно Image1.Picture = LoadResPicture...
Вот тебе пример того, о чем я говорю, попробуй пощелкать по лампочке.
Вложения
ImageOption.zip
(2.53 Кб) Скачиваний: 61
Нет ничего невозможного для человека с интеллектом.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 18.01.2006 (Ср) 12:57

Kostyan
Вкусно, но это не лайт ©
У мя на форме градиент, и мне абсолютно не хочется использовать Image , а затем рассчитывать RECT, в котором рисовать текст, поэтому на мой взгляд легче самому создать окно, которое перерисовывать :roll:
Если всё делать своими ручками, они скоро отвалятся !

Kostyan
Постоялец
Постоялец
 
Сообщения: 439
Зарегистрирован: 20.09.2002 (Пт) 4:14
Откуда: Россия, Уссурийск

Сообщение Kostyan » 18.01.2006 (Ср) 12:59

Ну делай как знаешь :) Видимо для тебя это самый легкий путь.
Нет ничего невозможного для человека с интеллектом.

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 19.01.2006 (Чт) 13:27

А как все таки этот кругляшок нарисовать с точкой и пообъемней ? :)
Если всё делать своими ручками, они скоро отвалятся !

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 25.01.2006 (Ср) 15:14

Ну может кто-нить поможет мне нарисовать хоть плоский кругляшок с точкой, пожааалуйста :roll:
Прилагаю проект, на всякий случай :)
Вложения
forforum.rar
(19.6 Кб) Скачиваний: 62
Если всё делать своими ручками, они скоро отвалятся !

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

Сообщение GSerg » 25.01.2006 (Ср) 15:21

Код: Выделить всё
Option Explicit

Private Declare Function DrawFrameControl Lib "user32.dll" (ByVal hDC As Long, ByRef lpRect As RECT, ByVal un1 As Long, ByVal un2 As Long) As Long

Private Type RECT
  Left As Long
  Top As Long
  Right As Long
  Bottom As Long
End Type

Private Const DFC_BUTTON As Long = 4
Private Const DFCS_BUTTONRADIO As Long = &H4
Private Const DFCS_CHECKED As Long = &H400

Private Sub Form_Load()
  Dim r As RECT
 
  Me.AutoRedraw = True
 
  r.Left = 10: r.Top = 10: r.Right = 30: r.Bottom = 30
  DrawFrameControl Me.hDC, r, DFC_BUTTON, DFCS_BUTTONRADIO Or DFCS_CHECKED
 
  r.Left = 10: r.Top = 50: r.Right = 30: r.Bottom = 70
  DrawFrameControl Me.hDC, r, DFC_BUTTON, DFCS_BUTTONRADIO
End Sub
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Konst_One
Член-корреспондент академии VBStreets
Член-корреспондент академии VBStreets
Аватара пользователя
 
Сообщения: 3041
Зарегистрирован: 09.04.2004 (Пт) 13:47
Откуда: Химки

Сообщение Konst_One » 25.01.2006 (Ср) 15:22

может это поможет
Вложения
Checkboxes.rar
(2.73 Кб) Скачиваний: 66

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 25.01.2006 (Ср) 15:31

GSerg
Спасибо, большое :)
Konst_One
У мя оптион, а не чек , но всё равно спасибо :wink:
Если всё делать своими ручками, они скоро отвалятся !

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 27.01.2006 (Пт) 11:01

родился маленький вопрос: почему если к проекту добавить манифест, то кисть рисует оптионы со своей начальной точки, а не с того места , которое под оптионом на форме(то есть скажем если на форме картинка, то она рисуется на оптионе со своей начальной точки)? (без манифеста всё нормально)
Если всё делать своими ручками, они скоро отвалятся !

Kovu
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 924
Зарегистрирован: 29.04.2005 (Пт) 17:38

Сообщение Kovu » 27.01.2006 (Пт) 18:22

Ну ладно, видимо никто не знает :roll:
Если всё делать своими ручками, они скоро отвалятся !


Вернуться в Visual Basic 1–6

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

Сейчас этот форум просматривают: SemrushBot и гости: 36

    TopList