Автор | Сообщение |
|
| постоянный участник
|
Пост N: 3882
Зарегистрирован: 12.09.06
|
|
Отправлено: 07.01.15 18:29. Заголовок: Чего мне не хватает в МиниГуи....
Всех с праздниками !!! Предлагаю тем кто использует МиниГуи высказать свои предложения по улучшению данного продукта, да и в какую сторону двигаться дальше.... Вот то что мне не хватает (я имею в виду примеров): 1. Очень мало примеров для работы с DLL (хотя это и не относиться к МиниГуи, но как делать не знаю). 1.1 Как собирать свои ресурсы к программе в отдельную dll-ку. Как подключать её при запуске, показ картинок из dll (я может и догадываюсь, но пока не могу сделать этого) ? 1.2. Как сделать отдельный свой ехе-ник, а Харбор и Минигуи затолкать в отдельную dll-ку, ну и LetoDB в отдельную dll. Как подключать при запуске эти отдельные dll и пользоваться функциями из этих dll ? 1.3. Как использовать чужие dll (допустим на Дельфи) в своих программах на МиниГуи (хотя FastReport'ом пользуюсь, но он специально сделан под Харбор) ? Разные примеры из МиниГуи на эту тему смотрел, кое что понятно, кое что нет. 2. Полноценная работа с иконками 2.1. Сейчас приходиться каждый размер иконки (16х16, 32х32 и т.д.) хранить отдельно в ресурсном файле и выводить на кнопки по отдельности. Нужна функция вывода из ОДНОГО файла иконки (содержащий все размеры от 16х16 до 128х128) выбранного размера. 2.2. Как из shell32.dll (она содержит все размеры иконок) можно выбрать и показать иконку отличную от размера 32х32 ? 2.3. Как вывести на форму ( не на кнопку) иконку заданного размера ? Вот пока часть чего хочется... Может на Рождество желания сбудутся ?
|
|
|
Ответов - 202
, стр:
1
2
3
4
5
6
7
8
9
10
11
All
[только новые]
|
|
|
| |
Пост N: 7021
Зарегистрирован: 17.05.05
|
|
Отправлено: 15.02.19 16:08. Заголовок: rvu Для IE не забыв..
rvu Для IE не забываем oActiveX:Silent := 1
|
|
|
|
| |
Пост N: 152
Зарегистрирован: 05.11.05
|
|
Отправлено: 22.02.19 11:53. Заголовок: Есть несколько фрейм..
В html есть несколько фреймов. А как программным путем сделать конкретный фрейм активным? Хочу сделать кнопки печати сверху браузера, но чтобы они с разными фреймами работали. Или как вариант - узнать имя файла открытого именно в этом фрейме в данный момент времени. Это можно?
|
|
|
|
| постоянный участник
|
Пост N: 2250
Зарегистрирован: 17.02.12
|
|
Отправлено: 22.02.19 15:15. Заголовок: rvu пишет А как прог..
rvu пишет цитата: | А как программным путем сделать конкретный фрейм активным? |
| на hb это не делал, пробовал на AoutoIt, думается суть работы должна быть похожа Скрытый текст
1. #include <IE.au3>; подключаем библиотеку $oIE=_IECreate("http://10.3.30.103:9080/Main/login.html") _IELoadWait($oIE) $oFrame=_IEFrameGetCollection($oIE) $oObj=_IEGetObjById($oFrame,'j_username'); здесь поле ввода логина _IEAction($oObj,'focus'); фокус на поле логина _IEAction($oObj,'CLICK'); клик на логине 2. $oInputs=_IETagNameGetCollection($oIE,'input') ;Наводим фокус на поле логина For $oInput In $oInputs If $oInput.type=='text' and $oInput.name=='j_username' Then _IEAction($oInput,"focus") ExitLoop EndIf Next
|
|
|
|
|
| |
Пост N: 153
Зарегистрирован: 05.11.05
|
|
Отправлено: 23.02.19 10:20. Заголовок: Засада оказалось в д..
Засада оказалось в другом месте. Печать работает только для всех фреймов сразу. Как ее сделать для одного фрейма не понял. Пока что повесил кнопку прямо во фрейме, в html, хотя мне это и не нравится.
|
|
|
|
| постоянный участник
|
Пост N: 2251
Зарегистрирован: 17.02.12
|
|
Отправлено: 23.02.19 13:08. Заголовок: rvu Может якорь бел..
rvu Может якорь белый текст на белом фоне вместо кнопки и его исполнять
|
|
|
|
| постоянный участник
|
Пост N: 6269
Зарегистрирован: 12.09.06
|
|
Отправлено: 24.04.19 17:22. Заголовок: Чем отличается работ..
Чем отличается работа МиниГуи в Win7 от Win8.1 ? Сам пишу программу под Win8.1, ошибок нет, всё прекрасно работает. Под Win7 при показе вылетает и всё тут. Пытаюсь повторить эту ошибку у себя - нет ошибки. Совсем нет. Пример: Как поймать эти ошибки ? Сделать запись в текстовый лог всех нажатий мышки на формах ? А как ?
|
|
|
|
| |
Пост N: 1485
Зарегистрирован: 20.02.11
|
|
Отправлено: 24.04.19 18:16. Заголовок: Andrey пишет: Чем о..
Andrey пишет: цитата: | Чем отличается работа МиниГуи в Win7 от Win8.1 ? |
| Как минимум разные версии виндовс могут в разном порядке обрабатывать события. Сталкивался на W7 и Server2003 Установить себе W7
|
|
|
|
| |
Пост N: 7034
Зарегистрирован: 17.05.05
|
|
Отправлено: 24.04.19 21:00. Заголовок: Andrey пишет: Сам п..
Andrey пишет: цитата: | Сам пишу программу под Win8.1 |
| А на ней кто то работает еще ? Народ в основном юзает XP(почти уходит на нет) ,7(как правило эту ось юзают) или 10(таких не много)
|
|
|
|
| постоянный участник
|
Пост N: 6270
Зарегистрирован: 12.09.06
|
|
Отправлено: 25.04.19 00:32. Заголовок: Dima пишет: А на не..
Dima пишет: цитата: | А на ней кто то работает еще ? |
| Да нет, под Win8.1 мало кто сидит. В основном народ уже уходит на 10-ку. Просто Win8.1 как и 10-ка меньше проблем, МиниГуи - рулит ! На них прога работает отлично, под Windows Server 2008/2012 тоже проблем нет, а вот под 7-кой начинает вылетать моя прога. В самых неожиданных местах. Принудительно клиента перевести не могу. Видно придётся ждать, пока клиент созреет сам перейти на 10-ку.
|
|
|
|
| |
Пост N: 1486
Зарегистрирован: 20.02.11
|
|
Отправлено: 25.04.19 08:07. Заголовок: Andrey пишет: вот п..
Andrey пишет: цитата: | вот под 7-кой начинает вылетать моя прога |
| На работе 7ка и server2003 дома 10ка… Нигде ни чего не вылетает. Вернее все вылеты устранены.
|
|
|
|
| постоянный участник
|
Пост N: 841
Зарегистрирован: 13.10.05
|
|
Отправлено: 06.10.20 10:09. Заголовок: Уважаемые коллеги! П..
Уважаемые коллеги! Пора двигаться вперед с Харбором, подтягивать программу к интернету. А то точно останемся на обочине. Всё чиним, чиним, деревянные колеса в своей телеге, когда все уже давно пересели на машины.
|
|
|
|
|
| постоянный участник
|
Пост N: 6833
Зарегистрирован: 12.09.06
|
|
Отправлено: 30.10.20 17:11. Заголовок: Vlad04 пишет: Пора ..
Vlad04 пишет: цитата: | Пора двигаться вперед с Харбором, подтягивать программу к интернету. А то точно останемся на обочине. |
| Не понятное предложение, очень расплывчатое. Более подробнее опишите что нужно.
|
|
|
|
| постоянный участник
|
Пост N: 7167
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.12.21 13:36. Заголовок: Григорий давал такой..
Григорий давал такой код для показа иконок на форме: DEFINE WINDOW Form_Main ... .... ON GOTFOCUS RefreshWin( ThisWindow.Handle ) ; .... DRAW ICON IN WINDOW Form_Main AT .... ... и функцию эту // перересовка объектов на форме #define WM_PAINT 15 *--------------------------------------------------------* Static Procedure RefreshWin( hWnd ) *--------------------------------------------------------* SendMessage( hWnd, WM_PAINT, 0, 0 ) Do Events Return Надоело таскать это из проекта в другие проекты. Можно вставить эту функцию в МиниГуи ? Или можно по другому уже делать ?
|
|
|
|
| постоянный участник
|
Пост N: 7168
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.12.21 17:21. Заголовок: SergKis пишет: А Re..
SergKis пишет: цитата: | А RefreshWnd(hWnd), попробуй сделать в свой ch или prg #xtranslate RefreshWnd( <hWnd> ) => SendMessage( <hWnd> , 15 , 0 , 0 ) ; DoEvents() // WM_PAINT 15 |
| Нет, не компилируется... Вот такая ошибка: Harbour 3.2.0dev (r2104281802) Copyright (c) 1999-2021, https://harbour.github.io/ test-tsbview.prg(51) Error E0030 Syntax error "syntax error at 'ON'" 1 error No code generated. Исходник такой: DEFINE WINDOW Form_Main WIDTH nW HEIGHT nH TITLE cTtl ; MAIN NOMAXIMIZE NOSIZE TOPMOST BACKCOLOR aBClr ; ON GOTFOCUS RefreshWin( ThisWindow.Handle ) ; ON INIT {|| This.TopMost := .F., This.Minimize ,; DoEvents(), _wPost(nEvent) /*, _wPost(99)*/ }
|
|
|
|
| постоянный участник
|
Пост N: 4007
Зарегистрирован: 17.02.12
|
|
Отправлено: 13.12.21 17:50. Заголовок: Andrey пишет Ты под..
Andrey пишет цитата: | Нет, не компилируется... Вот такая ошибка |
| Ты подумал , что получилось после подстановки или посмотрел файл после препроцессора, параметр -p... ? добавь скобки тут #xtranslate RefreshWnd( <hWnd> ) => ( SendMessage( <hWnd> , 15 , 0 , 0 ) ; DoEvents() ) или в ON GOTFOCUS ( ... ) или {|| ... }
|
|
|
|
| постоянный участник
|
Пост N: 7169
Зарегистрирован: 12.09.06
|
|
Отправлено: 13.12.21 17:54. Заголовок: SergKis пишет: Ты п..
SergKis пишет: цитата: | Ты подумал , что получилось после подстановки или посмотрел файл после препроцессора, параметр -p... ? добавь скобки тут |
| Да я думал, что уже готовое решение ...
|
|
|
|
| постоянный участник
|
Пост N: 7223
Зарегистрирован: 12.09.06
|
|
Отправлено: 18.02.22 12:26. Заголовок: DRAW ICON IN WINDOW ..
DRAW ICON IN WINDOW .... Можно ли добавить к этой программе возможности смены курсора на этом объекте и обработку клика мышки на этой иконке ?
|
|
|
|
| moderator
|
Пост N: 2019
Зарегистрирован: 11.02.10
|
|
Отправлено: 18.02.22 22:34. Заголовок: Andrey пишет: возмо..
Andrey пишет: цитата: | возможности смены курсора на этом объекте и обработку клика мышки |
| Да, это можно сделать Посмотри, как это работает в примере ниже (доработан пример из папки samples\Basic\Icons): /* * Author: P.Chornyj <myorg63@mail.ru> * * A Quick & Easy guide to Microsoft Windows Icon Size * https://www.creativefreedom.co.uk/icon-designers-blog/windows-7-icon-sizes/ */ ANNOUNCE RDDSYS #include "hmg.ch" /////////////////////////////////////////////////////////////////////////////// procedure main() local cIcon := 'IconVista.ico', hIcon local aInfo PUBLIC w, h if IsVistaOrLater() hIcon := LoadIconByName( cIcon, 256, 256 ) elseif IsWinXPorLater() hIcon := LoadIconByName( cIcon, 128, 128 ) endif if Empty( hIcon ) quit endif aInfo := GetIconSize( hIcon ) w := aInfo[ 1 ] h := aInfo[ 2 ] define window Form_Main ; clientarea w, h + GetMenuBarHeight() ; title 'Icons Demo' ; main ; nomaximize nosize ; on release ; ( ; DestroyIcon( hIcon ) ; ) define main menu define popup "&File" menuitem "E&xit" action ThisWindow.Release end popup end menu CREATE EVENT ProcName _IconMouseClick() end window draw icon in window Form_Main at 0, 0 hicon hIcon width w height h on key Escape of Form_Main action ThisWindow.Release Form_Main.Center() Form_Main.Activate() return function _IconMouseClick( hWnd, nMsg, wParam, lParam ) LOCAL Flag := _IconMouseCursor() LOCAL RetVal := NIL #define WM_LBUTTONDOWN 513 IF nMsg == WM_LBUTTONDOWN .AND. Flag == .T. IF hWnd == GetFormHandle( "Form_Main" ) // Click in show page to print RetVal := 0 MsgInfo("Mouse Click!") ENDIF ENDIF RETURN RetVal function _IconMouseCursor() LOCAL hWnd, aPos, IsPoint, aCoords := { h/2-10, w/2-10, h/2+10, w/2+10 } STATIC s_Flag := .F. IF _IsWindowDefined ( "Form_Main" ) .AND. ValType( aCoords ) == 'A' hWnd := GetFormHandle( "Form_Main" ) aPos := GetCursorPos( hWnd ) IsPoint := PtInRect( aPos, aCoords ) IF IsPoint == .T. .AND. s_Flag == .F. s_Flag := .T. SetWindowCursor( hWnd, IDC_HAND ) ELSEIF IsPoint == .F. .AND. s_Flag == .T. s_Flag := .F. SetWindowCursor( hWnd, IDC_ARROW ) ENDIF ENDIF RETURN s_Flag В этом примере мышка меняет форму курсора и выполняет действие только в центре иконки
|
|
|
|
| постоянный участник
|
Пост N: 7224
Зарегистрирован: 12.09.06
|
|
Отправлено: 19.02.22 12:23. Заголовок: gfilatov2002 пишет: ..
gfilatov2002 пишет: цитата: | Посмотри, как это работает в примере ниже |
| Спасибо БОЛЬШОЕ !
|
|
|
|
| постоянный участник
|
Пост N: 7261
Зарегистрирован: 12.09.06
|
|
Отправлено: 17.11.22 13:04. Заголовок: В 1С используют стан..
В 1С используют стандартный/системный бегунок копирования файлов. А на МиниГуи можно сделать так же ?
|
|
|
Ответов - 202
, стр:
1
2
3
4
5
6
7
8
9
10
11
All
[только новые]
|
|