Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 | 2 |

 

  Вопрос: Возможно глупый, и частозадаваемый вопрос Добавлено: 05.11.04 21:17  

Автор вопроса:  kolyanoid
Как сделать в ВБ-приложении ХР-стильные контроллы?
Что для этого нужно: в инете ХР-контроллы искать, или в настройках что-то делать?

Ответить

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

Номер ответа: 1
Автор ответа:
 Barsik



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

ICQ: 343368641 

Вопросов: 17
Ответов: 686
 Web-сайт: barsik.newmail.ru
 Профиль | | #1
Добавлено: 05.11.04 22:28
мона и контролы юзать а мона и файлы манифеста...
выбор за тобой... тока манифесты будут в ХР работать, а юзерконтролы в любой винде...

Ответить

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



Вопросов: 19
Ответов: 60
 Профиль | | #2 Добавлено: 06.11.04 00:47
Понятно, а откуда ХР-контроллы нарыть? Или есть в SP6? А то моя прога должна работать на всех виндах, которые круче 95й :) (вернее, которые поддерживают ДиректХ 7+) и работать она будет у ~100 человек...

Ответить

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



Вопросов: 30
Ответов: 683
 Профиль | | #3 Добавлено: 06.11.04 07:29
По-моему лучше всего манифесты, зашитые внутрь ЕХЕ, а иначе ХР конролы в других системах будут некрасивыми

Ответить

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



Вопросов: 117
Ответов: 1538
 Профиль | | #4 Добавлено: 06.11.04 13:04
откуда ХР-контроллы нарыть?

Искать в примерах, не только на этом сайте, их огромное количество.

По-моему лучше всего манифесты, зашитые внутрь ЕХЕ, а иначе ХР конролы в других системах будут некрасивыми

С манифестом будет стиль ХР будет только в ХР, в остальных будут обычные кнопки. А если контролы использовать, то они будут выглядеть одинаково под любой ОС, хоть ХР, хоть 98

Ответить

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



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

ICQ: 343368641 

Вопросов: 17
Ответов: 686
 Web-сайт: barsik.newmail.ru
 Профиль | | #5
Добавлено: 06.11.04 13:12
дык мона универсальный контрол зделать, который делает проверку винды.. еси ХР то стиль ХР.. если другой, то другой...

Ответить

Номер ответа: 6
Автор ответа:
 night-roll



Вопросов: 36
Ответов: 326
 Профиль | | #6 Добавлено: 07.11.04 05:21
этих XP контролов хоть до одного места!
единственное, что требуется доработка каких-то в большей, каких-то в меньшей степени!
сам пишу скроллбар а-ля XP, который бы поддерживал темы XP, то бишь скины (оливковая, серебристая, голубая), но есть 1 заковырка - см. тему пользовательский контрол

Ответить

Номер ответа: 7
Автор ответа:
 night-roll



Вопросов: 36
Ответов: 326
 Профиль | | #7 Добавлено: 07.11.04 05:23
забыл сказать, если бы ни эта заковырка, то скролл готов лечь в исходнике (и готовом примере) на этот сайт (с разрешения админов, конечно)

Ответить

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



Вопросов: 30
Ответов: 683
 Профиль | | #8 Добавлено: 07.11.04 09:31
С манифестом будет стиль ХР будет только в ХР, в остальных будут обычные кнопки


Я че и говорю!!! Если в вин2000 будут ХР кнопки - то это будет полное х....

Ответить

Номер ответа: 9
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #9 Добавлено: 07.11.04 14:53
Вот файл манифеста для VB6:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="x86" name="prjThemed" type="win32" />
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="x86" publicKeyToken="6595b64144ccf1df" language="*" />
</dependentAssembly>
</dependency>
</assembly>

И сразу вопрос, несколько мне известно чтобы использовать стили XP необходимо использовать ф-ю InitCommonControlsEx. Но! У меня все работает без неё, т.е. запускаю VB кидаю на форму элементы…, компилирую, даю имя файлу манифеста “ИМЯ ПРОГРАММЫ.EXE.MANIFEST”, кладу его в папку с exe’шником, запускаю и О ЧЮДО – все как у ХРюши.
Собственно вопрос – это нормально или использовать InitCommonControlsEx серавно нужно?

Ответить

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



Вопросов: 30
Ответов: 683
 Профиль | | #10 Добавлено: 07.11.04 15:09
Все равно нужно. Попробуй запихнуть на форму Фрейм, откомпилировать и подсунуть манифест.
У меня ЕХЕ вообще не запустился. Нужно запускать
InitCommonControls

Ответить

Номер ответа: 11
Автор ответа:
 Mihalыch



ICQ: 373-509-101 

Вопросов: 56
Ответов: 330
 Профиль | | #11 Добавлено: 07.11.04 15:24
Понял. А почему если OptionButton помещаю во внутрь фрейма его фон становится черным и изменить его не получается? Ф-ю вызываю так:
Option Explicit
    Private Type tagInitCommonControlsEx
      lngSize As Long
      lngICC As Long
    End Type
    Private Declare Function InitCommonControlsEx Lib "comctl32.dll" (iccex As tagInitCommonControlsEx) As Boolean
    Private Const ICC_USEREX_CLASSES = &H200
Private Sub Form_Initialize()
    On Error Resume Next
    ;Dim iccex As tagInitCommonControlsEx
    With iccex
      .lngSize = Len(iccex)
      .lngICC = ICC_USEREX_CLASSES
    End With
    InitCommonControlsEx iccex
End Sub

Ответить

Номер ответа: 12
Автор ответа:
 kolyanoid



Вопросов: 19
Ответов: 60
 Профиль | | #12 Добавлено: 07.11.04 23:43
Так, с манифестами вроде всё ясно. Значит нужно создать файл, впихнуть в него вышеуказанные кишки, и обозвать его соответствующим образом... Правильно? Тогда сразу 2 вопроса.
1) Эти кишки менять нужно или нет? Это для любой проги пойдёт?
2) Какой код в самой проге нужен, что всё без глюков было?

Ответить

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



Вопросов: 117
Ответов: 1538
 Профиль | | #13 Добавлено: 07.11.04 23:57
1 Ну можешь ещё prjThemed заменить на имя своей программы
2 Тот, который Mihalыch постил (№ 11)

Ответить

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



Вопросов: 30
Ответов: 683
 Профиль | | #14 Добавлено: 08.11.04 07:16
Скачай PE Explorer (Если хочешь - я вышлю)
Там есть функция для генераций манифеста и впихивания его в ЕХЕ

Ответить

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



Вопросов: 30
Ответов: 683
 Профиль | | #15 Добавлено: 08.11.04 07:18
А почему если OptionButton помещаю во внутрь фрейма его фон становится черным и изменить его не получается?


Не знаю. У меня такая же хрень.

Ответить

Страница: 1 | 2 |

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



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