Автор | Сообщение |
Pasha
|
| Администратор
|
Пост N: 2561
Зарегистрирован: 23.05.05
|
|
Отправлено: 27.11.12 19:48. Заголовок: hwgui
Что-то я совсем запутался Сделал svn commit по адресу: https://hwgui.svn.sourceforge.net/svnroot/hwgui Последний коммит был 2012-09-25 19:30 UTC-0300 Luis Fernando Basso <lfbasso at via-rs.net> На сайте проекта и в майл-листе вижу, что коммиты были и после этой даты. Но что-то не найду новый адрес А ветвь, куда я сбросил изменения, заморожена и не развивается ?
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|
alkresin
|
| moderator
|
Пост N: 744
Зарегистрирован: 06.07.06
|
|
Отправлено: 11.12.13 16:08. Заголовок: Эта конструкция с do..
Эта конструкция с do while не позволяет программе перейти в состояние ожидания, в котором она могла бы обрабатывать сообщения для диалогового окна, поэтому в нем ничего не прорисовывается. То же - для inkey()
|
|
|
vladru
|
| |
Пост N: 44
Зарегистрирован: 25.10.13
|
|
Отправлено: 11.12.13 20:16. Заголовок: Спасибо за разъяснен..
Спасибо за разъяснения. Но как сделать чтобы во время индексации надпись появилась ? (она, как я понимаю, тоже не появляется из-за отсутствия состояния ожидания) Например вот в таком примере (street это база из kladr.zip) : Скрытый текст #include "hwgui.ch" Function Main Local oMainWindow INIT WINDOW oMainWindow MAIN TITLE "Example" ; AT 200,0 SIZE 400,150 MENU OF oMainWindow MENUITEM "&Exit" ACTION hwg_EndWindow() MENUITEM "&DoIndex" ACTION DoIndex() ENDMENU ACTIVATE WINDOW oMainWindow Return Nil Static Function DoIndex() LOCAL oDlg USE street.dbf oDlg := DlgWait() INDEX ON code TO street oDlg:Close() RETURN nil Static Function DlgWait() Local oDlg INIT DIALOG oDlg AT 0,0 SIZE 200,70 ; STYLE DS_CENTER + WS_SYSMENU @ 10, 10 SAY "Wait, please ..." SIZE 180,20 ACTIVATE DIALOG oDlg NOMODAL oDlg:Show() Return oDlg
|
|
|
|
alkresin
|
| moderator
|
Пост N: 747
Зарегистрирован: 06.07.06
|
|
Отправлено: 12.12.13 18:27. Заголовок: А если вы вместо тог..
А если вы вместо того, чтобы вызывать oDlg:Show() добавите в STYLE диалога WS_VISIBLE, надпись появится ?
|
|
|
vladru
|
| |
Пост N: 45
Зарегистрирован: 25.10.13
|
|
Отправлено: 13.12.13 11:38. Заголовок: ДА! Если вместо вызо..
ДА! Если вместо вызова oDlg:Show() добавить в STYLE диалога WS_VISIBLE, то надпись появляется. Спасибо.
|
|
|
nick_mi
|
| |
Пост N: 138
Зарегистрирован: 19.05.05
|
|
Отправлено: 25.12.13 09:34. Заголовок: DBCHW
Александр! А можно в DBCHW добавить где-нить на экране информацию о том, что запись помечена для удаления в версиях 2.2 и 2.3 индикацию не нашел, может плохо искал ? А может где-то надо сделать установки?
|
|
|
alkresin
|
| moderator
|
Пост N: 758
Зарегистрирован: 06.07.06
|
|
Отправлено: 25.12.13 15:38. Заголовок: Нет такой индикации,..
Нет такой индикации, надо будет сделать
|
|
|
rovix
|
| |
Пост N: 40
Зарегистрирован: 31.01.13
|
|
Отправлено: 13.01.14 17:08. Заголовок: Добрый день! Второй ..
Добрый день! Второй подход в попытке освоить Harbour. На этот раз с hwg. Все равно не хватает теории в создании приложений с помощью харбора :( Начинаю, казалось бы, с простого. Создаю форму в дизайнере. Проверяю работу внутри дизайнера - условно работает. Условно, в том смысле, что первую кнопку пока не стал озадачивать действиями. Компилирую - компилируется без ошибок Запускаю - внешний вид окна не такой как в дизайнере Вверху вид в дизайнере, внизу после компиляции. Нажимаю кнопку "Изм текст" - получаю ошибку: Скрытый текст "Error BASE/1003 Variable does not exist: OLABEL1 Called from main.prg->OBUTTON3_ONCLICK(31) Called from main.prg->(b)_MAIN(22) Called from source\winapi/hdialog.prg->ONDLGCOMMAND(334) Called from source\winapi/hdialog.prg->(b)(_INITSTATICS00003)(0) Called from source\winapi/hdialog.prg->HDIALOG:ONEVENT(182) Called from ->HWG_DLGBOXINDIRECT(0) Called from source\winapi/hdialog.prg->HDIALOG:ACTIVATE(136) Called from main.prg->_MAIN(25) Called from main.prg->MAIN(5) HWGUI 2.18 Build 1 Date:01/13/14 Time:15:57:55"
| Текст приложения: Скрытый текст #include "hwgui.ch" STATIC Thisform FUNCTION main( p1, p2, p3, p4 ) RETURN _main( p1, p2 ,p3 ,p4) FUNCTION _main LOCAL oButton1, oButton2, oButton3, oLabel1 INIT DIALOG oDlg TITLE "Form1" ; AT 0,-130 SIZE 340,91 NOEXIT ; STYLE WS_POPUP+WS_CAPTION+WS_SYSMENU+WS_SIZEBOX+DS_CENTER Thisform := oDlg @ 12,50 BUTTON oButton1 CAPTION "Окно 1" SIZE 90,30 ; STYLE WS_TABSTOP @ 229,49 BUTTON oButton2 CAPTION "Выход" SIZE 90,30 ; STYLE WS_TABSTOP ; ON CLICK {|| oDlg:CLOSE() } @ 123,50 BUTTON oButton3 CAPTION "Изм текст" SIZE 90,30 ; STYLE WS_TABSTOP ; ON CLICK {|| oButton3_onClick( ) } @ 18,13 SAY oLabel1 CAPTION "Этот текст изменить" SIZE 136,19 ACTIVATE DIALOG oDlg RETURN oDlg:lresult STATIC FUNCTION oButton3_onClick oLabel1:Caption:='Новый текст!!!' oDlg:REFRESH() RETURN Nil
| А теперь возникшие вопросы: 1.По внешнему виду кнопочек на форме - так и должно быть? 2.Почему в дизайнере работает, а после компиляции нет - что не так в тексте программы. 3.Сейчас приложение в виде диалога и изменить содержимое контрола (в данном случае текст) по кнопке получается, если же оформляю как окно "MAIN", то refresh сделать никак не получается. Я так понимаю, что нужно как-то по другому, но КАК? Спасибо за внимание. Подскажите, что делать. Может у кого-то есть литература по harbour&
|
|
|
rovix
|
| |
Пост N: 41
Зарегистрирован: 31.01.13
|
|
Отправлено: 13.01.14 18:46. Заголовок: версия hwg 2.18, har..
|
|
|
rovix
|
| |
Пост N: 42
Зарегистрирован: 31.01.13
|
|
Отправлено: 13.01.14 18:51. Заголовок: пардон, компилятор m..
пардон, компилятор mingw тот, что cтавится вместе с harbour 3.0.0 с 64х разрядными библиотеками.
|
|
|
alkresin
|
| moderator
|
Пост N: 765
Зарегистрирован: 06.07.06
|
|
Отправлено: 14.01.14 10:05. Заголовок: rovix пишет: 1.По в..
rovix пишет: цитата: | 1.По внешнему виду кнопочек на форме - так и должно быть? |
| Вы, наверное, компилируете приложение при помощи hbmk.bat ? Тогда создайте руками текстовый файл, например, manifest.rc, включите туда строчку: 1 24 "..\image\WindowsXP.Manifest" ( путь к WindowsXP.Manifest у вас может быть другим ) и вставьте этот manifest.rc в hbmk.bat: hbmk2 %1 manifest.rc -i..\include -L..\lib -lhwgui -lprocmisc -lhbxml -lhwgdebug.lib -gui -trace %2 Вид кнопок и др. элементов изменится. Это шаманский прием от Microsoft... Мне надо было включить это дело самому, просто я сам пользуюсь исключительно Borland C 5.5, в батниках для него это все включено. цитата: | 2.Почему в дизайнере работает, а после компиляции нет - что не так в тексте программы. |
| oLabel1 должен быть объявлен как Private, а не Local, сейчас он просто не виден в другой функции. Я правильно понял, что этот prg сгенерирован автоматически ? цитата: | 3.Сейчас приложение в виде диалога и изменить содержимое контрола (в данном случае текст) по кнопке получается, если же оформляю как окно "MAIN", то refresh сделать никак не получается. Я так понимаю, что нужно как-то по другому, но КАК? |
| Вместо oLabel1:Caption:='Новый текст!!!' oDlg:REFRESH() надо: oLabel1:SetText( 'Новый текст!!!' )
|
|
|
rovix
|
| |
Пост N: 43
Зарегистрирован: 31.01.13
|
|
Отправлено: 16.01.14 00:10. Заголовок: alkresin пишет: Я п..
alkresin пишет: цитата: | Я правильно понял, что этот prg сгенерирован автоматически ? |
|
Да, автоматически. Трюк с манифестом помог, спасибо.
|
|
|
|
alkresin
|
| moderator
|
Пост N: 766
Зарегистрирован: 06.07.06
|
|
Отправлено: 16.01.14 10:15. Заголовок: rovix пишет: Да, ав..
rovix пишет: Этот вариант годится, скорее, для учебных целей, я им никогда не пользовался. Модуль для формирования prg выполнен в виде внешнего скрипта ( designer/resource/f_hwgprg.prg ), кто-то из лучших побуждений заменил там тип создаваемых переменных с Private на Local - вот оно так и получилось.
|
|
|
ZAlex
|
| |
Не зарегистрирован
Зарегистрирован: 22.01.14
|
|
Отправлено: 22.01.14 21:20. Заголовок: Цвет GROUPBOX
Добрый день. Пытаюсь освоить HwGUI. Можно ли изменить цвет GROUPBOX? Делаю так: @ 3,10 GROUPBOX oGroupId CAPTION "Идентификаторы" SIZE oForm:nWidth - 10, 200 COLOR hwg_VColor("0000FF") Собираю MinGW. По синтаксису видим: #xcommand @ <x>,<y> GROUPBOX [ <oGroup> CAPTION ] <caption> ; [ OF <oWnd> ] ; [ ID <nId> ] ; [ SIZE <width>, <height> ] ; [ COLOR <color> ] ; [ BACKCOLOR <bcolor> ] ; [ FONT <oFont> ] ; [ ON INIT <bInit> ] ; [ ON SIZE <bSize> ] ; [ ON PAINT <bDraw> ] ; [ STYLE <nStyle> ] ; => ; [<oGroup> := ] HGroup():New( <oWnd>,<nId>,<nStyle>,<x>,<y>,<width>, ; <height>,<caption>,<oFont>,<bInit>,<bSize>,<bDraw>,<color>,<bcolor> ); [; hwg_SetCtrlName( <oGroup>,<(oGroup)> )] Должно работать, но.... Пробовал разные стили(хотя не конца понял, когда какие можно использовать) Подскажите, куда копать?
|
|
|
alkresin
|
| moderator
|
Пост N: 772
Зарегистрирован: 06.07.06
|
|
Отправлено: 23.01.14 08:54. Заголовок: ZAlex пишет: Можно ..
ZAlex пишет: цитата: | Можно ли изменить цвет GROUPBOX? |
| Да, действительно, для Groupbox цвет не меняется. У меня не возникало такой необходимости и я никогда это не проверял. Если очень надо, можете попробовать класс HGroupEx из contrib/ext_controls/hctrlex.prg - он входит в библиотеку hwg_extctrl.lib
|
|
|
ZAlex
|
| |
Пост N: 1
Зарегистрирован: 22.01.14
|
|
Отправлено: 23.01.14 12:19. Заголовок: alkresin пишет: Да,..
alkresin пишет: цитата: | Да, действительно, для Groupbox цвет не меняется. |
| Это не критично. Особой необходимости нет. Тестирую, поэтому и увидел. Спасибо за наводку.
|
|
|
vladru
|
| |
Пост N: 46
Зарегистрирован: 25.10.13
|
|
Отправлено: 03.02.14 14:03. Заголовок: У меня в диалогах ни..
У меня в диалогах ни для GET полей, ни при редактировании значений в BROWSE не работает шаблон PICTURE "@K" (Удаляет по умолчанию содержание Get-поля, если первая нажатая клавиша не клавиша управления курсором.) Простейший тест: #include "hwgui.ch" FUNCTION Main() LOCAL oDlg, xVal := "Text" hb_cdpSelect( "RU1251" ) INIT DIALOG oDlg title "Шаблон @K" AT 0, 0 size 200, 40 @ 10, 10 GET xVal SIZE 180, 20 PICTURE "@K" oDlg:Activate() RETURN nil Наверно он в hwgui просто не реализован... Это так ? (Если так, то может кто подскажет как сделать этот функционал подручными так сказать средствами.)
|
|
|
alkresin
|
| moderator
|
Пост N: 779
Зарегистрирован: 06.07.06
|
|
Отправлено: 05.02.14 08:52. Заголовок: vladru пишет: Навер..
vladru пишет: цитата: | Наверно он в hwgui просто не реализован... Это так ? |
| Так. Я даже не знал о существовании этого шаблона. Надо будет сделать.
|
|
|
vladru
|
| |
Пост N: 47
Зарегистрирован: 25.10.13
|
|
Отправлено: 05.02.14 23:26. Заголовок: Спасибо. Пока решил ..
Спасибо. Пока решил задачу добавив обработку шаблона "K" прямо в HEedit:onEvent при msg==WM_CHAR if ::lFirst .AND. ("K" $ ::cPicFunc) ::SetText("") ENDIF
|
|
|
alkresin
|
| moderator
|
Пост N: 782
Зарегистрирован: 06.07.06
|
|
Отправлено: 06.02.14 20:44. Заголовок: Правильно. Думаю, та..
Правильно. Думаю, там этому шаблону самое место, перед RETURN GetApplyKey(...
|
|
|
ZAlex
|
| |
Пост N: 3
Зарегистрирован: 22.01.14
|
|
Отправлено: 15.05.14 16:25. Заголовок: Groupbox цвет не меняется
Возвращаясь к вопросу по изменению цвета GROUPBOX -- подключил библиотеку hwg_extctrl.lib Пишу: HGroupEX():New( oForm,,131072,3,252,oForm:nWidth - 6, 330," Расположение терминала ",oFontGroup,,,,8404992,15462640,,) Собираю Borland C 5.5, ошибок нет. После запуска программы и вызова формы выскакивает ошибка: Error HCUSTOMWINDOW/0 Invalid class member Called from source\winapi\hcwindow.prg->HGROUPEX:_BACKSTYLE(228) Called from ext_controls\hctrlex.prg->HGROUPEX:NEW(1168) Called from terminal.prg->TERMEDIT(347) Called from terminal.prg->ONCLICK(252) Called from terminal.prg->(b)MAIN(148) Called from source\winapi\hbrowse.prg->HBROWSE:EDIT(1686) Called from source\winapi\hbrowse.prg->HBROWSE:BUTTONDBL(1611) Called from source\winapi\hbrowse.prg->HBROWSE:ONEVENT(393) Called from ->HWG_ACTIVATEMAINWINDOW(0) Called from source\winapi\hwindow.prg->HMAINWINDOW:ACTIVATE(334) Called from terminal.prg->MAIN(210) HWGUI 2.18 Build 2 Что я где неправильно использую? Спасибо?
|
|
|
Ответов - 300
, стр:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
All
[только новые]
|
|