|
BINDEVENT
|
|||
---|---|---|---|
#18+
Всем привет! Возникла следующая проблемка. Необходимо в гриде перехватывать RightClick на Headere (вышаю по правому щелчку свою процедуру) Мой INIT класса грида this.RecordSource="" this.crcur this.ColumnCount = FCOUNT() FOR i = 1 TO this.ColumnCount BINDEVENT(this.Columns[i].Header1, "RightClick", THIS, "FilterbyColumn",0) ENDFOR --Метод FilterbyColumn LOCAL laSource(1) =AEVENTS(laSource,0) LOCAL loColumn loColumn = laSource[1] ? m.loColumn.caption Т.е по правому щелчку должно выскочить caption столбца. Все замечательно работает, но только один раз при запуске приложения. Запускаю форму с грид, данные в грид показываются. Закрываю форму, снова запускаю - и грид пустой как белый лист. Ни полосок, ни хеадеров. Повесил в destroy класса this.ColumnCount = FCOUNT() FOR i = 1 TO this.ColumnCount UNBINDEVENTS(this.Columns[i].Header1, "RightClick", THIS, "FilterbyColumn") ENDFOR Но увы... Есть решение? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2011, 19:40 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
miv32, Стоит проверить DataSession и FCOUNT() http://msdn.microsoft.com/en-us/library/ckh4wek7(v=vs.80).aspx FCOUNT( ) returns 0 if a table isn't open in the work area you specify. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2011, 20:37 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
BINDEVENT() тут вообще ни при чем. Можешь его убрать и ничего не изменится. Грид показывается "белым квадратом" когда недоступен его источник данных, т.е. не открыта таблица/курсор, которую он должен отображать. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2011, 07:42 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
Имя курсора, на основе которого строится грид у меня делается так: *Формируем уникальное имя курсора* ncurr='_'+SUBSTR(SYS(2015), 3, 10) THIS.namecursor=ncurr И потом я его в destroy-е грида закрываю, чтобы не маячил :) Работало все нормально, но видимо BINDEVENT не любит этого дела. Убрал закрытие в destroy и стало все пучком. *!* IF USED(THIS.namecursor) *!* SELECT (THIS.namecursor) *!* USE *!* ENDIF ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2011, 08:18 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
вопрос: почему использована именно подписка на события? сделать, использовав класс колонки и хедера невозможно? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2011, 11:21 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
Невозможно. Знал бы прикуп, жил бы в Сочи :) На основе данного класса грид настроено уже много чего. А так малой кровью обошелся. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2011, 23:17 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
miv32Невозможно. Знал бы прикуп, жил бы в Сочи :) На основе данного класса грид настроено уже много чего. А так малой кровью обошелся. доработать класс, который уже используется религия не позволяет? о том, что Вы обошлись малой кровью расскажите нам после того, как будете отлаживать и лечить непредсказуемые разрушения, к которым ведет необдуманное использование подписки. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2011, 08:58 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
прошелмимоо том, что Вы обошлись малой кровью расскажите нам после того, как будете отлаживать и лечить непредсказуемые разрушения, к которым ведет необдуманное использование подписки. Если не секрет - что за разрушения? Я отказался от своих хэдеров в пользу BINDEVENT(), проблем нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2011, 09:08 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
Dima Tпрошелмимоо том, что Вы обошлись малой кровью расскажите нам после того, как будете отлаживать и лечить непредсказуемые разрушения, к которым ведет необдуманное использование подписки. Если не секрет - что за разрушения? Я отказался от своих хэдеров в пользу BINDEVENT(), проблем нет. молодец - только никому этого не советуй делать, и то, что у тебя нет проблем - это не показатель. и в чем причина отказа от класса хедера в сторону подписки? в чем причина отказа от разработки класса с заранее описанными методами, который легко редактируется и отлаживается? по поводу критич-го разрушения среды, в моей практике была задача по оптимизации простыни в 1,5 МБт с прогр.опеределением классов, динамическим добавлением объектов на форму и подпиской на события. После такого стиля программирования 2 отдела разработчиков (в разл.городах РФ) не могли дать "ладу" причине, по которой идет разрушение среды. На все мои вопросы: зачем, зачем так вести разработку? я получил только один ответ: а ... его знает. Поэтому мой совет: если нет опыта работы с подпиской, а тем более есть возможность разработки класса, что является более логичным, то стоит поступать именно так: разрабатывать класс грид со своими(не базовыми) классами колонок и хедеров. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2011, 09:28 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
ВладимирМ, здравствуйте!! Не подскажете, как можно автоматически заполнить поле грид, при вводе данных в другое поле грида?? очень нужна ваша помошь!! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2011, 11:13 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
ВладимирМПредлагаю обсудить этот вопрос в отдельной теме В каких случаях следует использовать BindEvents неполучитсо, - я с субъектами, которые загибают пальцы про то как можно сделать то-то и выпячивают свое пузо про то, как много они способов знают того, как что-то сделать не обсЧаюсь нормально. у разработчиков, которые используют среду для создания стабильно работающих приложений, задумывающихся над тем, как масштабировать затем свой продукт, как его сопровождать (в т.ч. четко, явно, быстро давать оценку ошибкам, проблемам) - иные приоритеты, которые неведомы "кулинарам". ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2011, 11:17 |
|
BINDEVENT
|
|||
---|---|---|---|
#18+
ВладимирМПредлагаю обсудить этот вопрос в отдельной теме В каких случаях следует использовать BindEvents и нехрен здесь открывать "филал фоксклуба", как сказал здешний модератор ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2011, 11:19 |
|
|
start [/forum/topic.php?fid=41&msg=37074789&tid=1584607]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 145ms |
0 / 0 |