Skyp Posted February 10, 2023 Share Posted February 10, 2023 Good afternoon. Own information about the virtual table and other place (place): But I can't come to the Back Scroll (VertScrollBar) - how does this happen? ... in result: Version 1.9.0.0.1564 Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 11, 2023 Share Posted February 11, 2023 Hello @Skyp Not enough details in my opinion. What needs to be done to reproduce this case? Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 11, 2023 Author Share Posted February 11, 2023 14 hours ago, Sherzod said: Hello @Skyp Not enough details in my opinion. What needs to be done to reproduce this case? Привет. Если совсем коротко (для простоты понимания) - я не могу найти способ получить текущую позицию и установить новую позицию VertScrollBar у UniDBTreeGrid, как я могу это сделать? К примеру установить новую позицию сразу после обновления TDataSet (привязанного к UniDBTreeGrid (UniDBTreeGrid-Datasource-Dataset))? UniDbTG.VertScrollBar = nil и когда я пытаюсь обратиться к свойству Position то получаю ошибку. --- Hello, In short(for simplicity), I have some problems. Firstly, I can't find a way to get the current position. Secondly, I cannot set a new VertScrollBar position from UniDBTreeGrid. How can I do it? For example, how can I set a new position after updating TDataSet (bind with UniDBTreeGrid (UniDBTreeGrid-Datasource-Dataset))? UniDbTG.VertScrollBar = nil and if I try to access the Position property then I get an error. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 12, 2023 Share Posted February 12, 2023 Привет @Skyp Этот пост может Вам помочь, попробуйте. --- Hello, This post may help you, try. Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 10 hours ago, Sherzod said: Привет @Skyp Этот пост может Вам помочь, попробуйте. --- Hello, This post may help you, try. Проблема в том что Locate - отрабатывает прекрасно, и нужная запись в DBGrid выделена, но ScrollBar уезжает вниз, а мне хотелось-бы чтобы он был пропорционален строке выбранной в locate... кейс который Вы приложили не помогает, Scroll не возвращается. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 12, 2023 Share Posted February 12, 2023 Just now, Skyp said: Проблема в том что Locate - отрабатывает прекрасно, и нужная запись в DBGrid выделена, но ScrollBar уезжает вниз, а мне хотелось-бы чтобы он был пропорционален строке выбранной в locate... кейс который Вы приложили не помогает, Scroll не возвращается. Можете прикрепить тестовый проект? Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 9 minutes ago, Sherzod said: Можете прикрепить тестовый проект? Да, через пару часов прикреплю, сейчас сделаю... Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 54 minutes ago, Sherzod said: Можете прикрепить тестовый проэкт? Example.zip Получилось быстрее.. Вот.. используется unidac ещё но не думаю что дело в нем. testData лежит в Win32. Нажми на любой CheckBox Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 12, 2023 Share Posted February 12, 2023 16 minutes ago, Skyp said: используется unidac Есть ли возможность сделать используя ClientDataSet? Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 3 minutes ago, Sherzod said: Все ли вожность селат из спользуя ClientDataSet? Могу попробовать FireDac - т.е там есть логика на afterEdit связанная с LocalSQL.. сейчас переделаю... Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 53 минуты назад Шерзод сказал: Все новые и другие клиенты ClientDataSet? Ex2.zip, - FireDac demo --- вроде все модули unidac убрал и переписал немного работу с LocalSQL на aAfterEdit. Файл с данными в Win32 - testdatafdd.FDS. Ошибка в любом случае осталась прежней. Посмотрите - может быть проблема в дополнительной логики на onAfterEdit (мне в любом случае нужно каскадное обновление=()? Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 12, 2023 Share Posted February 12, 2023 1 hour ago, Skyp said: Нажми на любой CheckBox У меня вылетает следующая ошибка: Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 26 minutes ago, Sherzod said: У мения видэт сладущая ошибка : Эта ошибка глушится в модуле unidbcheckbox - я его специально приложил к проекту потому как редактирование на самом деле в этот момент уже возможно и это какой-то глюк который возникает кстати только unidbcheckbox - к примеру у DBEdit его нет т.к memtable уже не в статусе Edit находится на момент AfterEdit. Я ранее об этой проблеме писал т.к дефакто afterEdit работает уже с закрытым на редактирование DataSet - т.е если Вы её заглушите вставка пройдёт и все данные будут вставлены, компоненты DAC работают на AfterEdit и позволяют обновить тот-же DataSet, как это ошибка в CheckBox возникает - не понятно. Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 29 minutes ago, Sherzod said: У мения видэт сладущая ошибка : Подробнее здесь: где onAfterEdit подразумевает что DataSet уже закрыт для редактирования. Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 12, 2023 Author Share Posted February 12, 2023 47 minutes ago, Sherzod said: У меня вылетает следующая ошибка: На самом деле это не связанные вещи и можно написать такую заглушку: Это ничего не меняет - как VertScrollBar себя вел так и ведет... Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 13, 2023 Share Posted February 13, 2023 13 hours ago, Skyp said: кейс который Вы приложили не помогает, Scroll не возвращается. Так и должно быть?: Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 13, 2023 Author Share Posted February 13, 2023 3 hours ago, Sherzod said: Так и должно быть?: Да, конечно - это путь компонента в интерфейсе, это модель интерфейса RTTI из реального проекта. Функционал "прав" пользователя. На onAfterEdit отрабатывает логика - Если мы даём права на родительский компонент, то автоматический становятся доступны все дочерние компоненты - а когда я изменяю интерфейс у пользователя при авторизации за счёт свойств родительского компонента обновляются права на новые компоненты - каскадом, но это не здесь. А ID не может быть строкой? Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 13, 2023 Share Posted February 13, 2023 1 hour ago, Skyp said: А ID не может быть строкой? sender._locate = function(id) { var node = sender.getStore().getRootNode().findChild('1', id, true); Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 13, 2023 Share Posted February 13, 2023 В любом случае, Вы неправильно указываете индекс в findChild. ... Я попробую проанализировать Ваш случай больше. Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 13, 2023 Author Share Posted February 13, 2023 27 minutes ago, Sherzod said: sender._locate = function(id) { var node = sender.getStore().getRootNode().findChild('1', id, true); Я почти не знаю JS -/ я понял т.е он должен быть 6 ой? Quote Link to comment Share on other sites More sharing options...
Sherzod Posted February 13, 2023 Share Posted February 13, 2023 Just now, Skyp said: я понял т.е он должен быть 6 ой? Да. Quote Link to comment Share on other sites More sharing options...
Skyp Posted February 13, 2023 Author Share Posted February 13, 2023 52 minutes ago, Sherzod said: Да. Со Scroll это не помогло - он все равно скачет.. Если сможете подсказать как в JS получить позицию Scroll и выставить - я могу попробовать "вручную" это ловить и на Refresh или другое событие выставлять? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.