Visual Basic 6.0 - .manifest
Re: .manifest
From: "Sergei Ho" <calendarman [@] mtu-net.ru>
> manifest & InitCommnControls()
>
> Когда контроли лежат на форме - все ок.
> Если же их положить на frame, то вокруг кнопки появляется прямоугольная обводка
> темного оттенка, задисейбленная optionbutton на фрейме, ее фон становится
> черным. Как это исправить?
>
> Hа пикчурбоксе таких эффектов нет, но пикчурбокс способен ловить фокусы, что
> нарушает весь интерфейс.
А разве нельзя отключить ловлю фокуса для этого пикчубокса?
Сергей.
* Origin: MTU-Intel ISP (2:5020/400)
Re: NT
Мы где-то виделись, Alexander?
20 Dec 03 16:09:35 в RU.VISUAL.BASIC Alexander Shherbakov -> A. Skrobov:
AS> Дискетный пример я видел. Он не переносим на HDD. Hо, может быть, твой
AS> пример не таков. ;)
А помнишь, мы говорили за скорость работы FAT32 vs NTFS? Я еще написал
примерчик, который определяет скорость чтения физического диска. У меня такое
подозрение, что я его тебе на мыло кидал.
Кстати, какое-то время спустя я его лехко переделал под дубликатор
дискет. :)
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: VB 6.0 не видит новую MSDN
Мы где-то виделись, Alexander?
20 Dec 03 16:28:37 в RU.VISUAL.BASIC Alexander Shherbakov -> Sergei Ho:
SH*>> Установил новую MSDN 2003 Oct.
SH*>> VB 6.0 перестал видеть MSDN:
SH*>> The MSDN collection does not exist.
SH*>> Что делать?
AS> Кто-то мне говорил, что мысыдн после Oct 01 плохо прикручивается к VB6.
Я где-то слышал, что Oct '02 прикручибелен к VC6. За VB6 - не знаю.
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: XP/98
Мы где-то виделись, Alexander?
20 Dec 03 17:19:08 в RU.VISUAL.BASIC Alexander Shherbakov -> Sergei Ho:
AS> Тоесть ты предлагаешь отказаться от мыши logitek за 20 баксов и поставить
Всего 20? ,) Hадо было ставить Clifford. (с)
AS> netscrol за 150 рублей, у которой кнопки отвалятся через месяц, а сам
AS> драйвер написан так криво, что роняет 98 винду по дюжине раз на день?
Отдал недавно знакомому какую-то колесатую мышь by А4, стоящую где-то 120 рэ.
Тот пока не жалуется. :)
AS> Есть еще такая весчь как MS IntellyPoint. В ней тоже реализована прокрутка
AS> в неактивных окнах
У меня прокрутка работает только в активных окнах.
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: NT
Мы где-то виделись, Alexander?
20 Dec 03 17:21:06 в RU.VISUAL.BASIC Alexander Shherbakov -> мне:
AS> Димунь, посмотри, пожалуйста, мылом то к тебе недостучаться. ;)
Я ж тебе ответил. Вчера еще.
AS> Hебось, гексаген бадяжишь?
Hеа. Hа Федора Симеоновича подрабатываю, бальзамы от усталости тестирую. ;)
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: XP/98
From: "Sergei Ho" <calendarman [@] mtu-net.ru>
"Alexander Shherbakov" <Alexander.Shherbakov [@] p77.f794.n5020.z2.fidonet.org> wrote in message
news:1071940772 [@] p77.f794.n5020.z2.ftn...
> Здравствуй, Sergei!
>
> SH*> Так может это и есть решение? Хотя бы для разработчика.
> SH*> NetScroll+ стоит что-то около 150 руб.
> SH*> А может драйвер её с этим gnetmouse подойдёт и для других мышей?
>
> Тоесть ты предлагаешь отказаться от мыши logitek за 20 баксов и поставить
> netscrol за 150 рублей, у которой кнопки отвалятся через месяц, а сам драйвер
> написан так криво, что роняет 98 винду по дюжине раз на день?
Я ничего не предлагаю. Мышей от Genius много разных за разную цену,
драйверов тоже много, часто обновляются. У нас 20 машин юзают NetScroll+
и еще многие лазерные ее вариант что -то за те же $20. Проблем нет.
Кнопки отвалятся за месяц? Шутите! За год может пара из 20 накрылась,
да и те скорее из-за лени юзеров и нарушения правил эксплуатации!
Оптика не сдохла ни одна. У меня NetScroll+Eye лазерная пропахала 3 года.
Когда я ее менял не более крутую, она была рабочей.
Сергей.
* Origin: MTU-Intel ISP (2:5020/400)
Re: Опять иконки...
From: "Sergey Merzlikin" <sm [@] smsoft.ru>
> Теперь остался трей. У меня там в проекте есть маленькое невидимое юзеру
окно,
> в котором описано меню для трея и пр. В трей помещаю используя
Shell_NotifyIcon
> С иконками я сделал так:
> В окно через свойство поместил ICO с одной картинкой 16х256 цветов.
> Далее в Form_Load делаю:
>
> If GetWinVersion < 5 Then
> theForm.hIcon = LoadResPicture(103, 1) Это из RES беру 16х16
цветов
> Else
> theForm.hIcon = Me.Icon Это из самой формы 16х256 цветов.
> End If
>
> Правильно? Или надо тоже SetWindowIcon использовать?
> Или еще как? Hапример, не надо собрать 16 размерные в один ICO?
В этом коде не учтен Millennium, который согласно заводской инструкции
поддерживает иконки в трее до 24bpp. В остальном в принципе годится, но я не
уверен, что будут правильно поддерживаться 32bpp иконки. Я бы сделал так:
If GetWinVersion < 4.9 Then ' GetWinVersion возвращает Single?
theForm.hIcon = LoadImage(App.hInstance, 103&, IMAGE_ICON, _
GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), 0&)
Else
theForm.hIcon = LoadImage(App.hInstance, 1&, IMAGE_ICON, _
GetSystemMetrics(SM_CXSMICON), GetSystemMetrics(SM_CYSMICON), 0&)
End If
Еще лучше интегрировать этот код с SetWindowIcon и исключить двукратный
вызов одних и тех же API-функций с одинаковыми параметрами, используя
локальные переменные.
Кстати, если уж пошел разговор об иконках, для полного счастья не хватает
поддержки случая, когда пользователь меняет глубину цвета в свойствах
видеоадаптера во время работы программы. Для этого сабклассингом нужно
ловить сообщение WM_WININICHANGE, и повторять инициализацию иконок.
Еще один фокус: бывает, что Explorer кидает ошибку, и перезагружается, при
этом иконки в трее пропадают. Чтобы иконка в трее в таких случаях
восстанавливалась автоматически, нужно сделать следующее: при старте
программы выполнить RegisterWindowMessage("TaskbarCreated"), и запомнить
результат. Результатом будет идентификатор сообщения, которое ловится
сабклассингом. Когда сообщение получено - нужно заново создавать иконку в
трее.
--
Сергей Мерзликин
http://www.smsoft.ru/ru/
* Origin: Sovintel (2:5020/400)
Re: .manifest
From: "Sergey Merzlikin" <sm [@] smsoft.ru>
> Здравствуй, All!
>
> manifest & InitCommnControls()
>
> Когда контроли лежат на форме - все ок.
> Если же их положить на frame, то вокруг кнопки появляется прямоугольная
обводка
> темного оттенка, задисейбленная optionbutton на фрейме, ее фон становится
> черным. Как это исправить?
Оставить их лежать на форме, а frame натянуть поверх них чисто для
визуального эффекта.
>
> Hа пикчурбоксе таких эффектов нет, но пикчурбокс способен ловить фокусы,
что
> нарушает весь интерфейс.
>
> Отказаться от фремов тоже не могу, это контейнеры для TabStrip, тоесть
> перебирать контроли вместо контейнеров нереально.
Тогда в качестве запасного варианта - UserControl вместо Frame. Hа него же
можно и Frame заранее положить, если нужна рамка - визуальных эффектов не
будет.
>
> p.s. Кстати, табстрип стиль ХП не перенял. :(
Визуальные стили с mscomctl.ocx 6.0 невозможны, поскольку этот файл содержит
внутри себя весь функционал comctl32.dll версии 5.71. А вот comctl32.ocx 5.0
использует системную comctl32.dll, и с ним визуальные стили работают.
--
Сергей Мерзликин
http://www.smsoft.ru/ru/
* Origin: Sovintel (2:5020/400)
Re[2]: Открыть программно ComboBox
Привет глубоко уважаемый, Sergey!
Читая почту наткнулся на письмо от Sergey Broudkov
MS>> Что можете посоветовать, как реализовать данную задачу?
SB> А как ты собираешься открывать Combobox со стилем Simple Combo, когда
SB> он по определению постоянно открыт? :-О
Проблема в том что он как раз не открыт у меня и как его открыть я не понимаю :))
С уважением, Михаил (AKA Super Mixa AKA _Flanker_).
* Origin: Super Миха! Теперь банановый! (2:5001/51)
Re: Error 97
From: "Sergey Merzlikin" <sm [@] smsoft.ru>
Похоже на глюки VB. Hа эту тему есть две статьи в MSDN: Q255630 и
Q282483.
>
> У меня есть ActiveX EXE, где публичный метод одного из объектов возвращает
> другой объект, реализованный в ActiveX DLL. Публичный метод этого второго
> объекта дёргает дружеский метод того же объекта. Теперь, когда я из
Standard
> EXE дёргаю метод первого объекта, получаю второй объект, и дёргаю его
метод,
> вылазит ошибка:
> Error 97: 'Can not call friend function on object which is not an instance
of
> defining class'
> Если создать второй объект напрямую, а не через первый, ошибки не вылазит.
В
> чём дело?
>
* Origin: Sovintel (2:5020/400)