Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Парочка..хм..вопросов Добавлено: 14.09.04 16:16  

Автор вопроса:  dNW
1.вызывать XP контролы без манифеста
2.изменить цвет текста на CommandButton

Ответить

  Ответы Всего ответов: 15  

Номер ответа: 1
Автор ответа:
 Александр



Разработчик Offline Client

ICQ: 204034 

Вопросов: 106
Ответов: 1919
 Профиль | | #1 Добавлено: 14.09.04 17:30
1. Через контролы в разделе примеры этого сайта
2. Свойства .ForeColor

Ответить

Номер ответа: 2
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #2 Добавлено: 14.09.04 18:08
1. Нет, спасибо. Мне через InitCommonControls больше нравится
2. Очень смешно. У кнопки нет такого свойства

Ответить

Номер ответа: 3
Автор ответа:
 Comanche



Вопросов: 87
Ответов: 459
 Профиль | | #3 Добавлено: 14.09.04 18:45
По пункту 2:
http://www.mentalis.org/vbexamples/vbexample.php?vbexample=DSBTNCLR&category=MISC

Ответить

Номер ответа: 4
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #4 Добавлено: 14.09.04 20:33
Спасибо, но все равно не то :-))

Мне нужны кнопки в стиле ХР с цветными надписями

Всякие там самодельные контролы не предлогать, так как если мою прогу запустят допустим в вин2000, то кнопки там будут не стандартны - мне так не надо

Ответить

Номер ответа: 5
Автор ответа:
 cresta



Вопросов: 117
Ответов: 1538
 Профиль | | #5 Добавлено: 14.09.04 21:47
1.-
2.Покрасить надпись на кнопке можно, как для стиля хр, так и без оного.

Ответить

Номер ответа: 6
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #6
Добавлено: 15.09.04 00:04
1. Был tlb, позволял рисовать любые контролы в ХР стиле, без манифеста!

Ответить

Номер ответа: 7
Автор ответа:
 Comanche



Вопросов: 87
Ответов: 459
 Профиль | | #7 Добавлено: 15.09.04 12:25
2 cresta:
по-моему, пример с Mentalis.Org (см. ссылку выше) как раз "манифестно-независим". или нет?

Ответить

Номер ответа: 8
Автор ответа:
 cresta



Вопросов: 117
Ответов: 1538
 Профиль | | #8 Добавлено: 15.09.04 13:37
Comanche, пример по той ссылке вообще не воспринимает манифест, программа с ним просто не запускается, несмотря на InitCommonControls. Возможно из-за dll.
Кнопку можно покрасить безо всяких dll, я Lister'у делал пример кнопки с рисунком, просто надо в нем заменить DrawIcon на DrawText + SetTextColor (проверял, работает как с манифестом, так и без него)

Ответить

Номер ответа: 9
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #9 Добавлено: 15.09.04 16:43
Мда уж. Ничего конкретного

Ответить

Номер ответа: 10
Автор ответа:
 cresta



Вопросов: 117
Ответов: 1538
 Профиль | | #10 Добавлено: 15.09.04 18:32
Ну вот тебе конкретно, добавь необходимые декларации и процедуры, манифест и т.д.
;=========

Private Function ButtonProc(ByVal hwnd As Long, ByVal message As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    ;Dim hdc As Long ', Ps As PAINTSTRUCT
    ;Dim R As RECT, ret As Long
    Select Case message
        Case WM_PAINT, WM_LBUTTONDOWN, WM_LBUTTONUP
            ret = CallWindowProc(old_proc, hwnd, message, wParam, lParam)
            hdc = GetWindowDC(hwnd)
            SetTextColor hdc, RGB(250, 0, 0)
            SetBkMode hdc, TRANSPARENT
            GetClientRect hwnd, R
            ;DrawText hdc, "КРАСНАЯ", -1, R, 101
            ReleaseDC hwnd, hdc
            Exit Function
    End Select
    ButtonProc = CallWindowProc(old_proc, hwnd, message, wParam, lParam)
End Function
;=============================

Или ты хочешь всё приложение чтобы написали?

Ответить

Номер ответа: 11
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #11 Добавлено: 15.09.04 20:50
Я не врубаюсь в использование этой функций :-((

Ответить

Номер ответа: 12
Автор ответа:
 Black Dragon



ICQ: 321186096 

Вопросов: 30
Ответов: 347
 Web-сайт: в разработке
 Профиль | | #12
Добавлено: 15.09.04 21:16
Через ForeColor CommandButton'а НЕЛЬЗЯ сменить цвет текста!

Ответить

Номер ответа: 13
Автор ответа:
 cresta



Вопросов: 117
Ответов: 1538
 Профиль | | #13 Добавлено: 15.09.04 22:11
dNW

Это кусок CallBack'a для кнопки. Все сообщения пусть обрабатывает винда, кроме WM_PAINT, WM_LBUTTONDOWN, WM_LBUTTONUP. Их надо обрабатывать самому, иначе винда нарисует надпись своим черным цветом. А мы перехватываем управление у неё, когда приходят эти три сообщения для кнопки и когда надо рисовать кнопку и рисуем тем цветом, который нужен, и затем передаём управление опять винде.

Короче, куда тебе слать проект? Я его проверял в XP, с манифестом и без. Работает.

Ответить

Номер ответа: 14
Автор ответа:
 Александр



Разработчик Offline Client

ICQ: 204034 

Вопросов: 106
Ответов: 1919
 Профиль | | #14 Добавлено: 16.09.04 07:03
Ну, пардон, забыл я...

Ответить

Номер ответа: 15
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #15 Добавлено: 16.09.04 09:35
Ну отправь на dnw@lenta.ru

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам