On-line: Мирослав, гостей 0. Всего: 1 [подробнее..]
АвторСообщение
Andrey
постоянный участник




Пост N: 1929
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 15.11.11 21:36. Заголовок: Примеры из Минигуи -ошибки, вопросы..... (продолжение)


Всем привет.
Взялся смотреть примеры из МиниГуи, так не все работают. Может кто подскажет что там "допилить" нужно ?
А заодно может и исправить и добавить новые....

Очень красочный пример: \MiniGUI\SAMPLES\Advanced\AVI_Animation - не работает под Win7 (наверно AVI-шки нет в ресурсах)
Предложение Григорию:
Можно ли добавить еще один пример с отдельным AVI-файлом в ресурсах проекта и показом такого же бегунка ?


Пример: \MiniGUI\SAMPLES\Advanced\DisplayMode - не работает под ХР и далее....


Пример: \MiniGUI\SAMPLES\Advanced\Tsb_filter - вылетает на ХР
--------------------------------------------------------------------------------
Harbour MiniGUI Errorlog File
Harbour MiniGUI Extended Edition 2.0.1 - 2011.09.21
--------------------------------------------------------------------------------
Date: 11/15/2011 Time: 22:13:24
Error BASE/1124 Argument error: LEFT

Called from LEFT(0)
Called from SCANSOFT(195)
Called from MAIN(84)


Пример: \MiniGUI\SAMPLES\BASIC\MsgEdit - не собирается...
Z:\MiniGUI\SAMPLES\BASIC\MsgEdit>call ..\..\..\batch\compile.bat demo /L shell32
Harbour 3.1.0dev (Rev. 17042)
Copyright (c) 1999-2011, http://harbour-project.org/
Compiling 'demo.prg'...
Lines 20133, Functions/Procedures 30
Generating C source output to 'demo.c'... Done.
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
demo.c:
Error E2141 demo.prg 993: Declaration syntax error
*** 1 errors in Compile ***

C compile error.



Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]


Dima
администратор




Пост N: 6574
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 07.09.17 09:08. Заголовок: Можно ли прицепить и..


Можно ли прицепить иконку на окно при вызове InputBox , не выдергивая
сырец и не правя его руками ?

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 1179
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 07.09.17 09:49. Заголовок: Dima пишет: Можно л..


Dima пишет:

 цитата:
Можно ли прицепить иконку на окно при вызове InputBox


Да, копай команду

 цитата:
Set Default Icon To


Рабочий пример лежит в папке samples\Basic\InputBox

Спасибо: 0 
Профиль
Dima
администратор




Пост N: 6575
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 07.09.17 10:03. Заголовок: gfilatov2002 Спасиб..


gfilatov2002
Спасибо !

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5555
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 05.10.17 15:54. Заголовок: Использую для окна к..


Использую для окна команду:
SET INTERACTIVECLOSE OFF 
DEFINE WINDOW &cFormName ;
....
ON RELEASE {|| My(), как здесь дать команду INTERACTIVECLOSE в зависимости от состояния предыдущей команды }

Правилен ли будет следующий код ?
nWinClose := _HMG_InteractiveClose  
SET INTERACTIVECLOSE OFF
DEFINE WINDOW &cFormName ;
....
ON RELEASE {|| My(), IIF( nWinClose == 0, , _HMG_InteractiveClose := 1 ) }


Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 1634
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 05.10.17 17:06. Заголовок: Andrey пишет Правиле..


Andrey пишет
 цитата:
Правилен ли будет следующий код ?


Если работает правильно, то правильный
 
h_events.prg
...
//**********************************************************************
CASE WM_CLOSE
//**********************************************************************
...
IF ISBLOCK ( _HMG_aFormInteractiveCloseProcedure [ i ] )

r := _DoWindowEventProcedure ( _HMG_aFormInteractiveCloseProcedure [ i ] , i , 'WINDOW_ONINTERACTIVECLOSE' )
IF ValType ( r ) == 'L' .AND. r == .F.
RETURN ( 1 )
ENDIF

ENDIF

IF lParam <> 1
SWITCH _HMG_InteractiveClose

CASE 0
MsgStop ( _HMG_MESSAGE [3] )
RETURN ( 1 )
CASE 2
IF ! MsgYesNo ( _HMG_MESSAGE [1] , _HMG_MESSAGE [2] )
RETURN ( 1 )
ENDIF
EXIT
CASE 3
IF _HMG_aFormType [ i ] == 'A'
IF ! MsgYesNo ( _HMG_MESSAGE [1] , _HMG_MESSAGE [2] )
RETURN ( 1 )
ENDIF
ENDIF

END SWITCH
ENDIF
...
IF _HMG_aFormType [ i ] == 'A'

ReleaseAllWindows()

ELSE

IF ISBLOCK( _HMG_aFormReleaseProcedure [ i ] )

_HMG_InteractiveCloseStarted := .T.
_DoWindowEventProcedure ( _HMG_aFormReleaseProcedure [ i ] , i , 'WINDOW_RELEASE' )

ENDIF
...


Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5556
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 05.10.17 18:49. Заголовок: SergKis пишет: Если..


SergKis пишет:

 цитата:
Если работает правильно, то правильный


Да вроде работает !
До этого нельзя было окна другие крестиком закрывать.

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5557
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.10.17 20:14. Заголовок: Как назначить на окн..


Как назначить на окно иконку из System.SystemFolder + "\shell32.dll ?

Сделал ResEdit листинг shell32dll.rc, там иконка допустим 90-я: 176 ICON "Icon_90.ico"
Пробовал сделать так:
    
LOCAL hFormIcon := ExtractIcon( System.SystemFolder + "\shell32.dll", 90 )

SET DEFAULT ICON TO "Icon_90.ico"

Но это неправильно же.
#command SET DEFAULT ICON TO <iconname>
имени иконки в ресурсах ехе-ника нет, значит подставлять бесполезно.
Можно получить только хендл иконки из shell32.dll
А как этот хендл привязать к окну ?

Спасибо: 0 
Профиль
gfilatov2002
moderator




Пост N: 1186
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 09.10.17 21:01. Заголовок: Andrey пишет: Как н..


Andrey пишет:

 цитата:
Как назначить на окно иконку из System.SystemFolder + "\shell32.dll ?



Посмотри рабочий пример ниже:
Скрытый текст

Да, и с тебя - пиво

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5558
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.10.17 23:37. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Посмотри рабочий пример ниже:



Что-то не собирается...
Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
form_ico_dll.c:
Warning W8075 form_ico_dll.prg 302: Suspicious pointer conversion in function SaveIcon
Error E2349 form_ico_dll.prg 305: Nonportable pointer conversion in function SaveIcon
Warning W8075 form_ico_dll.prg 325: Suspicious pointer conversion in function SaveIcon
Error E2342 form_ico_dll.prg 325: Type mismatch in parameter 'nImageOffset' (wanted 'unsigned int', got 'int *') in function SaveIcon
*** 2 errors in Compile ***

Может что-то на этой странице потерялось ?

gfilatov2002 пишет:

 цитата:
Да, и с тебя - пиво


Без вопросов ! Пришлю !
Какую марку любишь ?

P.S. Нашел пример MiniGUI\SAMPLES\BASIC\ExtractIcon\demo2.prg ! Собралось !!!

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5574
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.10.17 17:05. Заголовок: Всем привет. Вывожу ..


Всем привет.
Вывожу avi-файл на форму. Что-то фон avi-файла различается на разных ОС.
Как можно считать цвет фона этого avi-файла ?
Есть ли функция считывания цвета фона пикселя по выбранным координатам ?

Вот код:
@ nRow, 0 LABEL Label_Full VALUE '' WIDTH nWidth HEIGHT 50 BACKCOLOR {240,240,240 } // фон под avi-файл
@ nRow, nCol ANIMATEBOX Avi_1 WIDTH 40 HEIGHT 40 File cResAvi AUTOPLAY TRANSPARENT NOBORDER

Под Windows 8 показ нормальный:


Под Windows XP или Server 2008 показ НЕ нормальный:


Как правильно выводить avi-файл, чтобы фон окна совпадал с фоном самого avi-файл ?



Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 1645
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 18.10.17 17:28. Заголовок: Andrey пишет Есть ли..


Andrey пишет
 цитата:
Есть ли функция считывания цвета фона пикселя по выбранным координатам ?


Поищи в SAMPLES GetPixel

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5575
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.10.17 18:33. Заголовок: Сделал считывания пи..


Сделал считывания пикселя с формы, но фигня всё равно получается.
Возвращается фон окна, а не avi-файла.

Как получить цвет фона avi-файла ? Нужно для показа avi на различных ОС.
Если ручками ставить, то цвет можно подобрать, но на разных ОС цвета будут выглядеть по разному.

Вот для ХР цвет фона для одного avi-файла подобрал, выглядит красиво, зато на 8-ке ерунда получается:


Сам тест здесь - https://cloud.mail.ru/public/MMg6/chzRm4boD

Спасибо: 0 
Профиль
Haz
администратор




Пост N: 1129
Зарегистрирован: 20.02.11
ссылка на сообщение  Отправлено: 18.10.17 20:23. Заголовок: Andrey пишет: можно..


Andrey пишет:

 цитата:
можно подобрать


Есть системные цвета. Как выбрать есть в примерах и исходниках, в частности в твоём любимом TSB


Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5576
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.10.17 22:03. Заголовок: Haz пишет: Есть сис..


Haz пишет:

 цитата:
Есть системные цвета. Как выбрать есть в примерах и исходниках


Спасибо БОЛЬШОЕ !
Нашёл цвета в i_winuser.ch
После пробы нашёл нужный цвет:
COLOR_MENU	4	{192, 192, 192}	 
COLOR_BTNFACE 15 {192, 192, 192}
COLOR_3DLIGHT 22 {192, 192, 192}


Сделал в исходнике так:
         @ nRow, 0 LABEL Label_Full VALUE '' WIDTH nWidth HEIGHT 50  
@ nRow+5, nCol ANIMATEBOX Avi_1 WIDTH 40 HEIGHT 40 File cResAvi AUTOPLAY TRANSPARENT NOBORDER
aBackColorAvi := nRGB2Arr( GetSysColor( 4 ) ) // COLOR_MENU из i_winuser.ch
Form_1.Label_Full.BackColor := aBackColorAvi // исправим фон как системный цвет


Теперь картинки выглядят правильно:


Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5577
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 18.10.17 22:10. Заголовок: А как можно получить..


А как можно получить ширину AVI-файла ? Есть ли такая функция ?
Ну и заодно уж и высоту AVI-файла ?

Спасибо: 0 
Профиль
SergKis
постоянный участник




Пост N: 1646
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 18.10.17 23:54. Заголовок: Andrey пишет А как м..


Andrey пишет
 цитата:
А как можно получить ширину AVI-файла ?


This.Avi_1.Width\Height не подходят ?

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5578
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.10.17 11:03. Заголовок: SergKis пишет: This..


SergKis пишет:

 цитата:
This.Avi_1.Width\Height не подходят ?


Да не подходят... Они возвращают что задаёшь при построении...
Хотя размер avi-файла совершенно другой...
Вычислить размер avi-файла - это что-то.
Приходиться делать вывод на форму без TRANSPARENT, потом эту форму выводить, потом захватывать редактором Snagit, потом уж считать
размеры avi-файла и полученные цифирки вносить в свой код программы...

Нужны функции типа:
      aBmp := GetBitmapSize( _HMG_aControlBrushHandle [ i ] ) 
aBmp := GetIconSize( _HMG_aControlBrushHandle [ i ] )


Спасибо: 0 
Профиль
Петр
постоянный участник


Пост N: 1568
Зарегистрирован: 09.10.06
ссылка на сообщение  Отправлено: 19.10.17 16:10. Заголовок: Andrey пишет: Вычис..


Andrey пишет:

 цитата:
Вычислить размер avi-файла - это что-то.
Приходиться делать вывод на форму без TRANSPARENT, потом эту форму выводить, потом захватывать редактором Snagit, потом уж считать
размеры avi-файла и полученные цифирки вносить в свой код программы



А щелкнуть правой клавишей мыши и посмотреть свойства не проще?

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5579
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 19.10.17 18:03. Заголовок: Петр пишет: А щелкн..


Петр пишет:

 цитата:
А щелкнуть правой клавишей мыши и посмотреть свойства не проще?


Да я в Far собираю проекты. Об этом и не подумал. Спасибо за подсказку !

Спасибо: 0 
Профиль
Andrey
постоянный участник




Пост N: 5581
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 21.10.17 17:05. Заголовок: Есть классный пример..


Есть классный пример SAMPLES\BASIC\GETFILE
А как вызвать такое же меню, только для сохранения файла ?
Самому делать такую форму - ужас сколько нужно знать...

Спасибо: 0 
Профиль
Ответов - 300 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All [только новые]
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 510
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет