Форум » GUI » [?] Простой вопрос » Ответить

[?] Простой вопрос

Dima: Есть главное окно программы , в нем живут несколько CHILD окон (не MDI). В процедуре ON INTERACTIVECLOSE главного окна есть блок кода , если он вернет TRUE тогда закроется главное окно и программа завершится. А вот если блок кода вернул FALSE , то как вернуть фокус ввода на окно на котором был фокус ввода до нажатия крестика главного окна ?

Ответов - 151, стр: 1 2 3 4 5 6 7 8 All

SergKis: Dima пишет Он ведь долго не живет , показался на время и пропал Если расшифровку делать через сам cToolTip, то надо сообщение сделать много строчным и установить (вроде должно ставиться) время сообщения больше, потом вернуть

Dima: а при наведении могу показать какое то свое окно вместо Tooltip ? например окно а в нем бровс , если мышка скажем уезжает за пределы этого окна то окно закрывается.

SergKis: Dima пишет а при наведении могу показать какое то свое окно вместо Tooltip ? например окно а в нем бровс делай окно без заголовка, кнопочек, сисменю (без всего) с Tsb, ставь на него фокус, при потере фокуса окном, убиваешь его, передавая фокус где был

Dima: что бы окно фокус потеряло нужно где то мышкой клацнуть а надо что бы окно закрывалось если курсор мышки выехал за координаты этого временного окна. наверное это можно сделать в MOUSEMOVE() TS или в ON MOUSEMOVE окна

SergKis: Это все можно, вопрос случайного выезда мыши за окно (задели мышу, задели случайно поверхность мышинную) - это может раздражать

Dima: ну не знаю , меня не раздражает к примеру как это сделано в C:\MiniGUI\SAMPLES\BASIC\Mouse_Coords\demo4.exe

SergKis: Dima тогда вперед меня раздражает без клацанья (скачет что не попадя, а я не просил)

Dima: gfilatov2002 пишет: Посмотри функцию rr_GetFontNames() из сырцов библиотеки HbPrinter А еще есть WIN_ENUMFONTFAMILIES()

Alex_Cher: При выполнение простой функции - DEFINE TAB Tab_3 PARENT Form_6 ... PAGE ' СВРА ' @ 130,500 CHECKBOX CheckBox_4 PARENT Form_6 ..... ..... Form_6.CheckBox_4.Enable := .f. вылетает ошибка в сырцах ... как это можно обойти ...? Application: C:\MiniGUI\SAMPLES\MY_BASIC\NAMOTKA\rekl_nam.exe Date: 11.12.2017 Time: 11:16:19 Time from start: 0 days 0 hours 0 mins 6 secs Error BASE/1132 Переполнение массива: Неверное количество аргументов Called from EVENTS(266) in module: h_events.prg Called from DISABLEWINDOW(0) Called from _DISABLECONTROL(1223) in module: h_controlmisc.prg Called from SETPROPERTY(3740) in module: h_controlmisc.prg Called from VIBOR_4(123) in module: rekl_nam.prg Called from (b)VIBOR(45) in module: rekl_nam.prg Called from _DOCONTROLEVENTPROCEDURE(1794) in module: h_windows.prg Called from EVENTS(1733) in module: h_events.prg Called from DOMESSAGELOOP(0) Called from _ACTIVATEWINDOW(1448) in module: h_windows.prg Called from VIBOR(54) in module: rekl_nam.prg Called from (b)MAIN(270) in module: rekl_nam.prg Called from _DOCONTROLEVENTPROCEDURE(1794) in module: h_windows.prg Called from EVENTS(1733) in module: h_events.prg Called from DOMESSAGELOOP(0) Called from _ACTIVATEWINDOW(1448) in module: h_windows.prg Called from MAIN(319) in module: rekl_nam.prg

Vlad04: Сложно сказать. Проверь - объявлена ли форма 6 в модуле. Попробуй отдельный микропример, который повторяет условия и т.п

gfilatov2002: Alex_Cher пишет: вылетает ошибка в сырцах Ищите ошибку у себя в коде либо подготовьте небольшой пример, который демонстрирует проблему. Мой тестовый пример отработал нормально [pre2]#include "minigui.ch" Function Main DEFINE WINDOW Form_1 ; AT 0,0 ; WIDTH 640 HEIGHT 480 ; TITLE 'Harbour MiniGUI Demo' ; MAIN ; ON SIZE SizeTest() /* DEFINE MAIN MENU DEFINE POPUP 'Test' MENUITEM 'Disable Page 1' ACTION DisableTab( 'Tab_1', 'Form_1', 1 ) MENUITEM 'Enable Page 1' ACTION EnableTab( 'Tab_1', 'Form_1', 1 ) SEPARATOR MENUITEM 'Disable Page 2' ACTION DisableTab( 'Tab_1', 'Form_1', 2 ) MENUITEM 'Enable Page 2' ACTION EnableTab( 'Tab_1', 'Form_1', 2 ) SEPARATOR MENUITEM 'Disable Page 3' ACTION DisableTab( 'Tab_1', 'Form_1', 3 ) MENUITEM 'Enable Page 3' ACTION EnableTab( 'Tab_1', 'Form_1', 3 ) SEPARATOR MENUITEM "E&xit" ACTION Form_1.Release() END POPUP END MENU */ DEFINE TAB Tab_1 ; AT 10,10 ; WIDTH 600 ; HEIGHT 400 ; VALUE 1 ; TOOLTIP 'Tab Control' PAGE 'Page &1' @ 60,20 textbox txt_1 value '1-Uno' @ 90,20 textbox txt_2 value '2-Dos' @ 120,20 textbox txt_3 value '3-Tres' END PAGE PAGE 'Page &2' @ 60,60 textbox txt_a value 'A-Uno' @ 90,60 textbox txt_b value 'B-Dos' @ 120,60 COMBOBOX combo_1 ITEMS {'1-Uno','2-Dos','3-Tres'} VALUE 1 END PAGE PAGE 'Page &3' @ 60,100 textbox txt_c value 'C-Uno' @ 90,100 textbox txt_d value 'D-Dos' // @ 120,100 SPINNER spinner_1 RANGE 0,10 VALUE 5 Define CheckBox CheckBox_4 Row 120 Col 100 Value .F. Caption 'Simple CheckBox' Width 120 PARENT Form_1 End CheckBox @ 150,100 FRAME Frame_2 WIDTH 120 HEIGHT 110 CAPTION "Page 3" DEFINE RADIOGROUP R1 ROW 170 COL 120 OPTIONS { 'Uno','Dos','Tres' } VALUE 1 WIDTH 80 END RADIOGROUP END PAGE END TAB END WINDOW Form_1.CheckBox_4.Enabled := .f. // DisableTab( 'Tab_1', 'Form_1', 2 ) Form_1.Center Form_1.Activate Return Nil Procedure SizeTest() Form_1.Tab_1.Width := Form_1.Width - 40 Form_1.Tab_1.Height := Form_1.Height - 80 Return [/pre2]



полная версия страницы