Форум » GUI » TsBrowse в Минигуи (продолжение) » Ответить

TsBrowse в Минигуи (продолжение)

Vlad04: TsBrows определяется в виде строки ПАРМЕТРОВ объекта и их значений К примеру [quote] DEFINE TBROWSE oBrw2 ; AT 60,450 ; ALIAS cAlias ; OF Form1 ; WIDTH 330 ; HEIGHT 340 ; FONT "Verdana" ; SIZE 9 ; ON DBLCLICK CopyRec(); ON GOTFOCUS fModelo_Hab(2) ; AUTOFILTER ; CELLED EDIT; VALUE nRec; GRID [/quote] Здесь я собрал параметры из разных tBrows Можно или нет и какие парметры заменить выражением ( и каким) ? oBrw2:.... oBrw2:....

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

Dima: Andrey пишет: Так вот после отбора, НАЧИНАЕТСЯ СРАЗУ редактирование первой записи попавшей по условию Очищай буфер после нажатия

gfilatov2002: Andrey пишет: Как это сделать ? Попробуй перенести обработку нажатий клавиш для поиска из функции MyKeyAction() в обработчик bUserKeys Примерно это будет выглядеть так: STATIC FUNCTION MyKey_F9((nKey,nFlags) IF !Alltrim(cStSearchValue) == Form_Spr.Text_1.Value cStSearchValue := Form_Spr.Text_1.Value ENDIF DO CASE CASE nKey == VK_F9 MsgInfo("VK_F9 !") CASE nKey > 31 .AND. nKey < 254 // добавить символ в поиск cStSearchValue := cStSearchValue + KeyToChar(nKey) Form_Spr.Text_1.Value := cStSearchValue RefreshBrowse() Return .F. // <----------- важно вернуть здесь FALSE ENDCASE Return .T.

Andrey: gfilatov2002 пишет: Попробуй перенести обработку нажатий клавиш для поиска из функции MyKeyAction() в обработчик bUserKeys А от MyKeyAction() тогда отказаться вообще ?


Andrey: gfilatov2002 пишет: Попробуй перенести обработку нажатий клавиш для поиска из функции MyKeyAction() в обработчик bUserKeys Перенес. От MyKeyAction() отказался вообще, т.е. &cBrw:bKeyDown := { | nKey , nFalgs| MyKeyAction(nKey,nFalgs) } убрал. Перестали работать клавиши управления маркером - стрелки (вверх, вниз и т.д.) Как быть ?

Haz: Andrey пишет: Перестали работать клавиши управления маркером сам их наверное и отключил вернув .F. из bUserkey Andrey пишет: Как быть ? смотреть как обрабатывается bUserKey в h_browse.prg строка 6197 If ::bUserKeys != Nil uReturn := Eval( ::bUserKeys, nKey, nFlags, Self ) If uReturn != Nil .and. ValType( uReturn ) == "N" .and. uReturn < 200 // interpreted as a virtual key code to nKey := uReturn //V90 // change the original key pressed ElseIf uReturn != Nil .and. ValType( uReturn ) == "L" .and. ! uReturn ::nUserKey := 255 // want to inhibit the KeyDown and KeyChar Methods for key pressed Return 0 EndIf EndIf

Andrey: Haz пишет: сам их наверное и отключил вернув .F. из bUserkey Да вроде не отключал. Модифицировал пример из \MiniGUI\SAMPLES\Advanced\Tsb_config т.е. поставил функцию обработки MyKeyEdit() и MyFieldEdit() и добавил фильтр по текстовому полю. Клавиши управления стрелок не работают. Помогите пожалуйста разобраться ? Пример Tsb_config-1.1.7z тут - https://cloud.mail.ru/public/5d315f972a72/MiniGui-Error

Haz: Andrey пишет: Да вроде не отключал. Ну-ну CASE nKey > 31 .AND. nKey < 254 cStaticSearch := cStaticSearch + KeyToChar(nKey) Form_0.Text_Seek.Value := cStaticSearch RefreshBrowse() xRet := .F. вот коды кнопок со стрелками #define VK_NEXT 34 #define VK_END 35 #define VK_HOME 36 #define VK_LEFT 37 #define VK_UP 38 #define VK_RIGHT 39 #define VK_DOWN 40 #define VK_SELECT 41 #define VK_EXECUTE 43 #define VK_SNAPSHOT 44 #define VK_INSERT 45 #define VK_DELETE 46 #define VK_HELP 47

Andrey: Haz пишет: вот коды кнопок со стрелками Спасибо БОЛЬШОЕ ! Я сделал как в терминалке. Ошибся. Как правильно сделать ? Достаточно ли сделать: CASE nKey > 47 .AND. nKey < 254 или еще что-то нужно сделать Так уже сделал - работает !

Andrey: Всем привет. Как при показе таблицы обойтись без дополнительных баз с SET RELATION. Есть массив aDim := {"---","город","село"} Создаю колонку: ADD COLUMN TO oBrw9 HEADER "Группа" + CRLF + "местности" ; DATA FieldWBlock( "KGROUP", Select() ) ; SIZE 150 ; ALIGN DT_CENTER,DT_CENTER,DT_RIGHT ; EDITABLE oBrw9:aColumns[6]:bPrevEdit := { || MyDimGroup(), FALSE } Как вместо кодов в базе выводить значения из массива ? Т.е. если в базе 0 - выводить aDim[1] := "---"? 1 - aDim[2] := "город" и т.д. Или ткните в пример, если он есть ?

Dima: Andrey пишет: Как вместо кодов в базе выводить значения из массива ? Этот вопрос ты уже задавал и тебе ответили , поройся в своей старой теме.

Andrey: Dima пишет: Этот вопрос ты уже задавал и тебе ответили , поройся в своей старой теме. Не помню, покажи пожалуйста. Я тогда не сделал, а сейчас нужно сделать.

Dima: Andrey Да мне тоже лень вместо тебя рыться в твоей старой теме см. MiniGUI\SAMPLES\Advanced\Tsb_array\

Haz: Andrey пишет: Как вместо кодов в базе выводить значения из массива ? Т.е. если в базе 0 - выводить aDim[1] := "---"? 1 - aDim[2] := "город" и т.д. Или ткните в пример, если он есть ? См. в примерах TsBrowse как использовать :bData или :SetData :bData - определяет кодовый блок выборки/записи в колонке TsBrowse :SetData - чуть сложнее и работает с двумя массивами aData и aValue , работает так - если значение в колонке будет найдено в aData то в ячейке отобразится соответствующее из aValue ( тут же в примерах использование ComboWBlock в :SetData - редактирование кода через выбор его соответствия из комбика )

Andrey: Haz Спасибо БОЛЬШОЕ ! Буду рыться... Dima Где ты взял такого классного пирата ?

Dima: Andrey пишет: Dima Где ты взял такого классного пирата ? В форме ответа слева есть смайлы а под ними цифирки Не пробовал на них нажимать ?

Andrey: Dima пишет: В форме ответа слева есть смайлы а под ними цифирки Не пробовал на них нажимать ? Я пирата раньше не видел ....

Andrey: Всем доброй ночи.... Вот что-то не идет у меня контекстное меню для TBROWSE... Объявил окно DEFINE WINDOW Form_5 ; .......................... ОN INIT MyTbr2() END WINDOW /////// Function MyTbr2() ............... DEFINE TBROWSE oBrw_1 ; ................. END TBROWSE DEFINE CONTEXT MENU CONTROL oBrw_1 MENUITEM "Включить показ удаленных записей" ... ............................ END MENU // строка 794 Выдает ошибку: Error BASE/1132 Переполнение массива: Неверное количество аргументов Called from _ENDMENU(517) Called from SPRCREATEBROWSE(794) Подскажите пожалуйста, что не так делаю ?

Haz: Andrey пишет: что не так DEFINE CONTEXT MENU CONTROL oBrw_1 OF Form_5

Andrey: Haz пишет: OF Form_5 Спасибо ! Заработало !

Andrey: Поймал глюк... Очередной... Если в моём справочнике несколько записей то в TBROWSE если раз 10 - колёсиком мышки покрутить, то база отсоединяется от TBROWSE ... пропадает соединение и всё.... После этого на экране можно листать базу вверх-вниз, но если попробовать редактировать, то вылет по ошибке: Error DBCMD/2001 Файл не открыт: Вот так выглядит это на экране: Как с этим бороться ?



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