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


Пост N: 420
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 19.12.13 18:16. Заголовок: TsBrowse в Минигуи (продолжение)


TsBrows определяется в виде строки ПАРМЕТРОВ объекта и их значений
К примеру

 цитата:

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


Здесь я собрал параметры из разных tBrows
Можно или нет и какие парметры заменить
выражением ( и каким) ?
oBrw2:....
oBrw2:....



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


Andrey
постоянный участник




Пост N: 4805
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 23.03.16 22:11. Заголовок: SergKis пишет: прощ..


SergKis пишет:

 цитата:
проще сделать GetBox вместе с tsb


Это действительно проще. В примере который я дал выше - есть такой метод....


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




Пост N: 906
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.03.16 01:59. Заголовок: Andrey пишет:есть та..


Andrey пишет:
 цитата:
есть такой метод....


Я такой имел ввиду: Скрытый текст


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




Пост N: 907
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.03.16 02:03. Заголовок: PS пропустил после @..


PS
пропустил после @ 0, 0 GETBOX MyFind ...
win_1.MyFind.Hide

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


Пост N: 528
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 24.03.16 05:28. Заголовок: SergKis Поиск и фуну..


SergKis
Поиск и фунукцию обработки клавиатуры прикрутил из другого примера ( Окно и бровс в одной функции), там все нормально работает.
В этом примере ругается на &(cForm), так как надо чтобы форма реагирвала на события.

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


Пост N: 529
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 24.03.16 06:31. Заголовок: SergKis ок! Нормаль..


SergKis
ок!
Нормальный поиск

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




Пост N: 908
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.03.16 10:29. Заголовок: Vlad04 Совет. испол..


Vlad04
Совет.
используйте блоки код (параметры), как прописаны их вызовы в tsb, проще будет и проблем меньше, например
 
METHOD KeyDown( nKey, nFlags ) CLASS TSBrowse
...
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 // 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
...

т.е. вместо
oBrw:bKeyDown := { | nKey | MyKeyAction(nKey,'win_1',oBrw,'win_1'), lOk := nKey != VK_ESCAPE }
делать
oBrw:bKeyDown := { | nKey,nFlags,oBrw| MyKeyAction(nKey,nFlag,oBrw) }
где
Funct MyAction(l_key, nFlags, oBrw )
Local cForm := oBrw:cParentWnd
Local cBrw := oBrw:cControlName
Local hBrw := oBrw:hWnd
... см. свойства tsb




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




Пост N: 909
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.03.16 10:33. Заголовок: PS по инерции копипа..


PS
по инерции копипастил не oBrw:bKeyDown, на мой взгляд, а oBrw:bUserKeys := ...

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


Пост N: 530
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 24.03.16 12:17. Заголовок: SergKis Не сочтите ..


SergKis
Не сочтите за наглость, не могли бы вы подправить ПРИМЕР в Вашей редакции.
Думаю, многим было бы полезно.
Спасибо.

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




Пост N: 910
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.03.16 20:40. Заголовок: Vlad04 пишет: подпра..


Vlad04 пишет:
 цитата:
подправить ПРИМЕР в Вашей редакции.


тут Скрытый текст


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




Пост N: 911
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 24.03.16 20:42. Заголовок: PS подправить OpenBr..


PS
подправить OpenBrows( "oBrw", 'win_1', 30, 2, win_1.Width-20, win_1.Height-95, Alias() )

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


Пост N: 531
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 25.03.16 10:15. Заголовок: оК Спасибо, но вопро..


оК
Спасибо, но вопросы остались.
Как обратится к элементам, объектам формы из функций ?
&(cForm) вместо win_1 не работает ?

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




Пост N: 4806
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 25.03.16 10:48. Заголовок: SetProperty( This..


SetProperty( ThisWindow.Name, "объект", "Enabled", .F. )
или
SetProperty( cForm, "MyFind", "Value", "проба" ) // записать в объект

cVal := GetProperty( cForm, "MyFind", "Value" ) // считать из объекта

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




Пост N: 912
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.03.16 10:59. Заголовок: Vlad04 тот же приме..


Vlad04
тот же пример без Public переменной click here

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


Пост N: 532
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 26.03.16 09:36. Заголовок: SergKis Ок. Все ч..


SergKis
Ок.
Все четко работает, но что ж так сложно. Все сложности должны быть в библиотеке (может у вас так и сделано).
А если на форме несколько Бровзов и другие компоненты ?

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




Пост N: 914
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.03.16 11:50. Заголовок: Vlad04 В чем сложно..


Vlad04
В чем сложность ? По моему очень похоже, как было в clipper tbrowse (координаты, алиас и UserFunc).
Ф-ии TBrw_... надергал из своего класса TBrw (служит надстройкой над tsb) и лежит вместе с TBrowse в либе. Убрав этот код, что останется от примера ?

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


Пост N: 533
Зарегистрирован: 13.10.05
ссылка на сообщение  Отправлено: 26.03.16 15:58. Заголовок: По моему очень похо..



 цитата:
По моему очень похоже ,, как было в clipper tbrowse



Так понятно

 цитата:
Ф-ии TBrw_... надергал из своего класса TBrw



Буду разбираться..


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




Пост N: 4808
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 26.03.16 23:23. Заголовок: Можно ли определить ..


Можно ли определить нажатие мышки в подвале таблицы ?
Т.е. на какой колонке подвала была нажата мышка, ну и вызвать функцию какую либо...

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




Пост N: 917
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 26.03.16 23:52. Заголовок: Andrey пишет:Можно л..


Andrey пишет:
 цитата:
Можно ли определить нажатие мышки в подвале таблицы ?


см. TSCOLUMN.PRG а то будет снова твоя цитата
 цитата:
Спасибо ! Не сообразил сразу там посмотреть !



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




Пост N: 4809
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 28.03.16 12:56. Заголовок: Можно ли определить ..



 цитата:
Можно ли определить нажатие мышки в подвале таблицы ?


Можно сделать так:
For nI := 1 To oBrw1:nColCount()
oBrw1:aColumns[ nI ]:bFLClicked := &("{|| MyFunctionSelect("+HB_NtoS(nI)+") }")
Next


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




Пост N: 925
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 28.03.16 13:34. Заголовок: Andrey Если поищешь..


Andrey
Если поищешь в h_tbrowse.prg bFLClicked (всего одно место), то увидишь
 
If ::aColumns[ nAtCol ]:bFLClicked != Nil

Eval( ::aColumns[ nAtCol ]:bFLClicked, uPar1, uPar2, ::nAt, Self )
...
выше увидишь
uPar1 := nRowPix, ;
uPar2 := nColPix, ;
и твой блок кода будет таким {|nRowPix,nColPix,nAt,oBrw| MyFunctionSelect(nRowPix,nColPix,nAt,oBrw) }
и номер колонки в ф-ии будет oBrw:nCell, а oBrw:nRowPos тек. строка и т.д.


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