Страница: 1 |
Страница: 1 |
Вопрос: КомбоБокс....
Добавлено: 17.11.05 18:22
Автор вопроса: mshak | ICQ: 203638900
хочу сделать комбик в программе выбора цвета, как это например реализовано в интернет эксплорере, т.е. каждый элемент в списке закрашен своим цветом... только вот не знаю как это сделать((
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа:
HOOLIGAN
Вопросов: 0
Ответов: 1066
Профиль | | #1
Добавлено: 17.11.05 18:29
ComboBoxEx делаешь на апях и будет тебе красивый выбор цвета, можешь и картиночки туда затолкать.
Номер ответа: 2
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #2
Добавлено: 18.11.05 01:22
это конечно бред, лучше свой контрол или на апях, но всё же...
'цвет только пункта, находящегося сейчас в фокусе (над которым проходит мышь).
'Я всего лишь, попробовал такой способ использования этого глюка в мирных целях!
'
'Authour: Daniyar Atadjanov
'
'Если что пишите: adaniyar@yahoo.com
'http://visualbasic.boom.ru - Хакинг и Кракинг на Visual Basic!
Private Sub T_Timer()
Select Case cmbMain.ListIndex
Case 0
cmbMain.BackColor = vbRed
Case 1
cmbMain.BackColor = vbBlue
Case 2
cmbMain.BackColor = vbGreen
Case 3
cmbMain.BackColor = vbWhite
Case 4
cmbMain.BackColor = vbYellow
Case 5
cmbMain.BackColor = vbBlack
Case 6
cmbMain.BackColor = vbMagenta
End Select
End Sub
Private Sub Label1_Click()
Call Shell("Start.exe " & "mailto:adaniyar@yahoo.com", 0)
End Sub
Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label1.ForeColor = vbRed
End Sub
Private Sub Label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label1.ForeColor = vbBlue
End Sub
Private Sub Label2_Click()
Call Shell("Start.exe " & "http://visualbasic.boom.ru", 0)
End Sub
Private Sub Label2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label2.ForeColor = vbRed
End Sub
Private Sub Label2_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Label2.ForeColor = vbBlue
End Sub
Номер ответа: 3
Автор ответа:
mshak
ICQ: 203638900
Вопросов: 1
Ответов: 2
Профиль | | #3
Добавлено: 18.11.05 21:25
а могли бы вы подсказать как его реализовать через api, или хотя бы только имена функций через которые это надо делать
Номер ответа: 4
Автор ответа:
HOOLIGAN
Вопросов: 0
Ответов: 1066
Профиль | | #4
Добавлено: 18.11.05 22:01
Реализовать можно так же как и любой другой контрол на api:
1. Активировать common controls (InitCommonControls)
2. Зарегистрировать класс контрола (RegisterClassEx)
3. Создать контрол (CreateWindowEx)
4. Нарисовать процедуру обработки сообщений (WndProc) и ловить в ней сообщения от системы
5. По получении интересующих сообщений вызывать те или иные процедуры, которые реагируют на сообщение
Код должен быть расположен в модуле, не в форме.
Примеры наверное можно найти в гугле. Есть пример, но не комбобоксб а кнопка и текстбокс в ApiGuide.
Номер ответа: 5
Автор ответа:
mshak
ICQ: 203638900
Вопросов: 1
Ответов: 2
Профиль | | #5
Добавлено: 20.11.05 00:09
выложи плз если не сложно, или на мыло если можешь. pojmanov@yandex.ru
Номер ответа: 6
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #6
Добавлено: 20.11.05 04:13
2 mshak, HOOLIGAN этого не выдержит, уме хватает меня придётся самому...