Форум » 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:....

Ответов - 300, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 All

Haz: Andrey пишет: А как тогда первую колонку сделать ? выведи в поле не просто номер OrdKeyNo() , а Alias() + "/" + oBrwS:cAlias + "/" + NTOC((oBrwS:cAlias)->(OrdKeyNo())) + "/" + (oBrwS:cAlias)->(OrdKeyFocus()) {|| Alias() + "/" + oBrwS:cAlias + "/" + NTOC((oBrwS:cAlias)->(OrdKeyNo())) + "/" + (oBrwS:cAlias)->(OrdKeyFocus()) } ну и посмотреть что меняется за последней записью

Andrey: Haz пишет: (oBrwS:cAlias)->(OrdKeyFocus()) Что за функция ? Не компилируется.

Haz: Andrey пишет: Что за функция ? http://www.ousob.com/ng/53guide/ng89ad4.php


Haz: опечатка OrdSetFocus() можно заменить любой возвращающей активный TEG

Andrey: Понял что надо OrdSetFocus()

Andrey: Сделал. Вот до нажатия вниз стрелкой за пределы бровса: Вот после нажатия вниз. А потом стрелка вверх: ///////////////////////////////////////////////////////////////////////////////// STATIC FUNCTION TblFocus() DoMethod(oBrwS:cParentWnd, oBrwS:cControlName, "SetFocus") RETURN NIL

Andrey: Я понимаю, что в индекс можно добавить условие FOR "!Deleted()" - и будет работать. Но я тогда не смогу переключаться на удалённые записи.

Haz: Andrey пишет: Я понимаю, что в индекс можно добавить условие FOR "!Deleted()" - и будет работать. Но я тогда не смогу переключаться на удалённые записи. Сможешь если будет два индекса и переключение между ними А так - вторая картинка правильная где 25 ,26, 27 На первой что то не то с OrdKeyNo()

Dima: Andrey пишет: FOR "!Deleted()" Без кавычек только.

Andrey: Haz пишет: На первой что то не то с OrdKeyNo() Может что-то в исходниках не то...

Andrey: Столкнулся с другой непоняткой: Стою на записи - допустим 5. Меняю поле входящее в индекс - допустим KDEL := 2 Заканчиваю редактирование, запись-5 улетает по индексу правильно, а я остаюсь на другой записи. Если же делаю такую обработку: oBrwS:aColumns[nJ]:bPrevEdit := {|| nRecBuff := (oBrwS:cAlias)->(RecNo()), ; MyFieldEdit( oBrwS:aColumns[oBrwS:nCell]:Cargo ) } oBrwS:aColumns[nI]:bPostEdit := {|| oBrwS:GoToRec(nRecBuff), oBrwS:GoLeft(), oBrwS:Refresh(.T.) } то у меня создаётся полностью вторая таблица (я выше об этом писал и приводил картинку). Как мне сейчас делать ? Т.е. поле попадает в индексное выражение....

Haz: Andrey пишет: Как мне сейчас делать ? Т.е. поле попадает в индексное выражение.... позже. ок ?

Haz: Andrey пишет: Как мне сейчас делать ? так отвечал вроде oBrwS:aColumns[nJ]:bPrevEdit := {|| nRecBuff := (oBrwS:cAlias)->(RecNo()), ; MyFieldEdit( oBrwS:aColumns[oBrwS:nCell]:Cargo ) } oBrwS:aColumns[nI]:bPostEdit := {|| oBrwS:GoToRec(nRecBuff), oBrwS:GoLeft(), oBrwS:Refresh(.T.) } oBrwS:aColumns[nI]:bEditEnd := {|| oBrwS:GoToRec((oBrwS:cAlias)->(RecNo())) } ЗЫ для внешнего редактирования есть :bExtEdit и пример есть

Andrey: Haz пишет: ЗЫ для внешнего редактирования есть :bExtEdit и пример есть А что за метод :bExtEdit ? Чуток описать можно ?

Haz: Andrey пишет: А что за метод :bExtEdit ? Чуток описать можно ? вызывается для организации внешнего редактирования Пример в C:\MiniGUI\SAMPLES\Advanced\TsBrowse\ через меню в Sample4 колонка Age редактируется внешне остальное описание - только в исходниках там 5 строк к нему относится и так все понятно

SergKis: Andrey пишет:Как мне сейчас делать ? вот пример, похож на твой, вроде работает click here

Andrey: Haz пишет: oBrwS:aColumns[nI]:bEditEnd := {|| oBrwS:GoToRec((oBrwS:cAlias)->(RecNo())) } Вот это помогло. Спасибо ! SergKis пишет: вот пример, похож на твой, вроде работает click here Принял к сведению. Главное не забыть бы про него...

Vlad04: oBrwS:aColumns[nI]:bEditEnd := {|| oBrwS:GoToRec((oBrwS:cAlias)->(RecNo())) } Вот это помогло. Если после редактирования значение индексированного поля возрастает, то происходит перемещение курсора но новую позицию вниз, а если уменьшается, то курсор вверх но новую позицию не поднимается.

Vlad04: И можно в общем случае как-то избавиться от указания номера колонки ?

Andrey: Vlad04 пишет: И можно в общем случае как-то избавиться от указания номера колонки ? Присоединяюсь обеими руками !!! Зачем для простой таблицы приходиться указывать обработку при смене значений индекса ? Сам Tsbоrwse не может это отследить и остаться на той записи, которую редактировали ?



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