ВСЁ про Sprint Layout
Re: ВСЁ про Sprint Layout
Возвращаясь к Pick-Place данным. В справке Пруссель пишет: "Корпус. Можно редактировать корпус компонента. Например "SO-8" или "0805_MET". Эти данные, вообще не являются необходимыми." Если они не являются важными, а для машины важен Центр, то зачем весь этот геморрой? Корпус и руками можно вписать в текстовом документе. Как всё запутано.
Надо отдохнуть, чтобы на свежую голову разобраться. 
skn_57
Re: ВСЁ про Sprint Layout
Вот мы спорим, выискиваем глюки у разработчика, раздуваем тему. Есть предложение!
UA3WM, а Вы возьмите и напишите Прусселю. Опишите все "глюки", что накопали, и покажите нам, что он ответит. Кстати говоря он очень быстро отвечает, буквально в течение получаса, и надо отдать ему должное - признаёт свои ошибки, если они есть. Писать ему нужно на немецком или английском. Вы же писали, что знаете много языков. Начните так:
Dear Mr. Matthias Pruessel !
........
Адрес, куда я писал - abacom.del@t-online.de
У них там два чувака главных - Lothar Feldmann и Matthias Pruessel, но на письма в основном отвечает Пруссель.
Мне интересно, что он Вам ответит, признает ошибку или даст пояснение.
UA3WM, а Вы возьмите и напишите Прусселю. Опишите все "глюки", что накопали, и покажите нам, что он ответит. Кстати говоря он очень быстро отвечает, буквально в течение получаса, и надо отдать ему должное - признаёт свои ошибки, если они есть. Писать ему нужно на немецком или английском. Вы же писали, что знаете много языков. Начните так:
Dear Mr. Matthias Pruessel !
........
Адрес, куда я писал - abacom.del@t-online.de
У них там два чувака главных - Lothar Feldmann и Matthias Pruessel, но на письма в основном отвечает Пруссель.
Мне интересно, что он Вам ответит, признает ошибку или даст пояснение.
skn_57
Re: ВСЁ про Sprint Layout
Alexeyslav писал(а):Какое отношение ОКНО имеет к заполнению поля?
В данном случае я думаю никакого отношения ОКНО к заполнению поля не имеет! Фокус на окно обычно делается когда нужно произвести какие то дополнительные изменения в тексте н/р изменить высоту символов, их цвет, но не сам текст. Но поскольку эта команда (на мой взгляд ошибочно) задана, а фактически нет "рычагов управления" для этой команды, то система и ругается. А то что не происходит стирание надписи "тип" в памяти, то это от блокирования системы и вывода окна с системной ошибкой.
Re: ВСЁ про Sprint Layout
Sub писал(а): Есть предложение! Вы возьмите и напишите Прусселю.
Предпочитаю быть в тени!
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: ВСЁ про Sprint Layout
Нет ,я не это имел в виду. А то что эта "запись" вообще не в окне находится. Программа где-то у себя держит эти записи, и исходя из них дергает окна - в некоторый момент получается ситуация когда запись есть, программа хочет дернуть окно а его уже нет - пользователь его закрыл или скрыл(сам или программно - это не столь важно). Не думаю что разработчики держат данные прямо на формах, иначе в такой ситуации более вероятен AV.
Re: ВСЁ про Sprint Layout
Alexeyslav писал(а):Нет ,я не это имел в виду. А то что эта "запись" вообще не в окне находится. Программа где-то у себя держит эти записи, и исходя из них дергает окна - в некоторый момент получается ситуация когда запись есть, программа хочет дернуть окно а его уже нет - пользователь его закрыл или скрыл(сам или программно - это не столь важно). Не думаю что разработчики держат данные прямо на формах, иначе в такой ситуации более вероятен AV.
Все правильно!
Естественно "надпись тип" переносится в память ядра процессора на свободное место памяти и к самому окну не привязана, но поскольку она там вызвана из окна и не очищена после обработки данных, то процессор думает, что окно занято. Короче происходит глюк. А вот причиной не стирания этой надписи как я понял является не правильно заданная команда
OnChange = MultiEinfaerben
OnEnter = E_BezEnter
Трудно понять немецкие сокращения, но вероятно что faerben это färben (цвет, а точнее наверное так ВклИзменение = МультиРаскраски) просто ихняя ä заменена тут на сочетание ae.
Непонятно зачем здесь задавать цвет для этой надписи!
Просто убрав команду OnEnter = E_BezEnter я убрал фокус на это окно и все. Так что остальной алгоритм выполнения операций с этой надписью сохраняется.
Re: ВСЁ про Sprint Layout
UA3WM писал(а):Предпочитаю быть в тени!
Судя по форумам, или тень маленькая или Вы слишком габаритный. А что мешает написать Прусселю? Всё стало бы на свои места. Думаю причина в другом.
skn_57
Re: ВСЁ про Sprint Layout
Sub писал(а):Вы слишком габаритный.
Не габаритный а известный в определенных кругах и набрав в поисковике UA3WM можно узнать обо мне все, вплоть до домашнего адреса и телефона! И наверное не нужно объяснять, что "работа" с чужими программами...........
Re: ВСЁ про Sprint Layout
....можно узнать обо мне все.....
Что за бред Вы несёте? Нахрена Прусселю то-то о Вас узнавать? Он кто - агент штази? Да ему похрену, кто пишет. Благодаря подобным письмам он тестирует программу и вносит исправления, если они есть. А до Вашей персоны, широко известной
, ему нет никакого дела. Кому надо, уже всё знают обо всех.
....."работа" с чужими программами...........Думаю у Вас хватит ума не показывать ему русифицированную версию, а приводить примеры на английской или немецкой версии. Я ему когда описывал что-либо и делал скриншоты, то только на английской версии и ни в коем случае не показывал скриншоты, где было хоть одно русское слово.
Что за бред Вы несёте? Нахрена Прусселю то-то о Вас узнавать? Он кто - агент штази? Да ему похрену, кто пишет. Благодаря подобным письмам он тестирует программу и вносит исправления, если они есть. А до Вашей персоны, широко известной
....."работа" с чужими программами...........Думаю у Вас хватит ума не показывать ему русифицированную версию, а приводить примеры на английской или немецкой версии. Я ему когда описывал что-либо и делал скриншоты, то только на английской версии и ни в коем случае не показывал скриншоты, где было хоть одно русское слово.
skn_57
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: ВСЁ про Sprint Layout
Память ядра процессора?
На делфи хоть когда-то писали? Надпись никак не может быть вызвана... надпись хранится в памяти как набор байт, к ней можно только обратится. А вызывают обычно подпрограмму.
Что касается TEdit - обработчики OnChange вызывается когда в поле пользователь что-то вводит или ему что-то программно присваивается. OnEnter срабатывает когда поле получает фокус. Может исключение обработчика и подавляет ошибку, но это не совсем верно - пойдет как временное решение чтобы не раздражать пользователя. Но мало ли что этот обработчик еще делает в программе... могут где-то еще бока вылезти.
В оригинальной версии глюк присутствует? Ну и мало ли откуда узнал о глюке, может от легального пользователя...
На делфи хоть когда-то писали? Надпись никак не может быть вызвана... надпись хранится в памяти как набор байт, к ней можно только обратится. А вызывают обычно подпрограмму.
Что касается TEdit - обработчики OnChange вызывается когда в поле пользователь что-то вводит или ему что-то программно присваивается. OnEnter срабатывает когда поле получает фокус. Может исключение обработчика и подавляет ошибку, но это не совсем верно - пойдет как временное решение чтобы не раздражать пользователя. Но мало ли что этот обработчик еще делает в программе... могут где-то еще бока вылезти.
"работа" с чужими программами...
В оригинальной версии глюк присутствует? Ну и мало ли откуда узнал о глюке, может от легального пользователя...
Re: ВСЁ про Sprint Layout
Alexeyslav писал(а): Надпись никак не может быть вызвана... надпись хранится в памяти как набор байт, к ней можно только обратится.
Есть дебуггеры, которые помимо HEX выдают и ASCII
Alexeyslav писал(а):Что касается TEdit -Может исключение обработчика и подавляет ошибку, но это не совсем верно - пойдет как временное решение чтобы не раздражать пользователя. Но мало ли что этот обработчик еще делает в программе
Нигде он больше не вылезет так как работает только для окна ввода "тип"
object E_Package: TEdit
Left = 20
Top = 408
Width = 173
Height = 21
MaxLength = 255
TabOrder = 12
OnChange = MultiEinfaerben
OnEnter = E_BezEnter
end
Можно вообще исключить обе строки для успокоения души, чтобы не раздражало!
Что одну удалить, что две эффект один и тот же – фокуса нет.
P.S. Пробежался по всему файлу и обнаружил что эти 2 строки ставятся когда перед ними есть строка Text =
object E_Bez: TEdit
Left = 16
Top = 32
Width = 75
Height = 21
TabOrder = 2
Text = 'R1'
OnChange = SE_TexthoeheEditChange
OnEnter = E_BezEnter
Так что они в "тип" ненужны так как нет надобности в изменении параметров текста
Последний раз редактировалось UA3WM Вс апр 28, 2013 12:40:19, всего редактировалось 1 раз.
-
S.Tarantsov
- Встал на лапы
- Сообщения: 106
- Зарегистрирован: Вт ноя 13, 2012 17:52:16
Re: ВСЁ про Sprint Layout
UA3WM писал(а):А хотите еще один мелочный глюк в оригинале, который я исправил?
Сравните оригинал или чей нибудь перевод с моим переводом!
На казусе это уже давным-давно исправлено было.
По ошибке правда Ваша, но такой способ исправления (удаление строки) кажется ненадёжным...
Re: ВСЁ про Sprint Layout
S.Tarantsov писал(а):На казусе это уже давным-давно исправлено было.
По ошибке правда Ваша, но такой способ исправления (удаление строки) кажется ненадёжным...
У меня тоже с самого начала переводов было исправлено просто я не объявлял об этом во избежании "дельных" советов.
По удалению строки посмотрим, попытка не пытка, может автор что придумает, но пока в этом плане глюков не вижу.
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: ВСЁ про Sprint Layout
OnChange в полях ввода часто используется для индикатора что поле было изменено, убираешь эту строку - не вызывается обработчик во всех полях где используется объект E_Bez и E_Package чем это чревато - сказать очень сложно не имея исходника на руках(вообще приведенные тексты это описание начального состояния всех расположенных компонент на форме, *.DFM в терминах Делфи). Скорей всего что-то перестанет сохранятся т.к. программа будет считать что изменений в полях не происходило и сохранять нечего. Так что я бы OnChange не трогал. Вот насчет перевода фокуса на окно, это еще можно как-то понять, исключив его программа не будет пытаться перевести фокус на окно когда это нужно будет - да собственно поэтому и не возникнет данная ошибка в каком-то случае, но ведь могут быть и другие вполне легальные случаи когда окно есть и надо подсветить поле, а обработчика соответствующего нет и просто ничего не произойдет. Ладно если этот объект используется только в одном окошке и для одной функции, а если где-то еще? Кстати в терминологии виндовс, даже стандартное поле ввода является самостоятельным окном, и эта ошибка может касаться исключительно конкретно этого прямоугольничка куда вводится текст на форме.
Что-то конкретное говорить без исходника не представляется возможным. Но определенно то что программа пытается перевести фокус на скрытое окно - это недоработка программы, и её надо решать через разработчика.
Как мне видится работа программы: В тот момент когда возникает ошибка программа пытается сказать пользователю что есть несохраненные данные путем открытия окна где эти данные введены, но окно скрыто и попытка подсветить конкретное поле на скрытой форме приводит к выше обсуждаемой ошибке.
Что-то конкретное говорить без исходника не представляется возможным. Но определенно то что программа пытается перевести фокус на скрытое окно - это недоработка программы, и её надо решать через разработчика.
Как мне видится работа программы: В тот момент когда возникает ошибка программа пытается сказать пользователю что есть несохраненные данные путем открытия окна где эти данные введены, но окно скрыто и попытка подсветить конкретное поле на скрытой форме приводит к выше обсуждаемой ошибке.
Re: ВСЁ про Sprint Layout
В приложении проверка на запоминание программой данных на компонент!
У кого есть замечания не стесняйтесь, вопрос актуальный!
У кого есть замечания не стесняйтесь, вопрос актуальный!
- Вложения
-
- Ввод элемента и вывод как Компонент.doc
- (118.5 КБ) 211 скачиваний
Re: ВСЁ про Sprint Layout
Alexeyslav писал(а): исключив его программа не будет пытаться перевести фокус на окно когда это нужно будет - да собственно поэтому и не возникнет данная ошибка в каком-то случае, но ведь могут быть и другие вполне легальные случаи когда окно есть и надо подсветить поле, а обработчика соответствующего нет и просто ничего не произойдет. .
Тут как раз таки и вопрос, а какое это окно для ввода текста или окно с движками скажем для изменения высоты текста.
В простом текстовом окне мы никаких параметров не меняем OnChange а просто пишем текст (других окон для Package нет). И при прописанных OnChange и OnEnter система их не видит (их нет) и не может на них создать фокус! Но это конечно моя версия, может автор что и задумал, но не доработал до конца.
P.S. Открыл панель в Sisulizer и никаких не задействованных скрытых кнопок и окон на ней не видно.
Re: ВСЁ про Sprint Layout
У меня всеравно все глючит! Недоработанная программа! Какие то окна вылитают!
-
Alexeyslav
- Друг Кота
- Сообщения: 4550
- Зарегистрирован: Чт май 05, 2011 21:26:34
- Откуда: Украина, Славутич
- Контактная информация:
Re: ВСЁ про Sprint Layout
Давайте по порядку. "OnChange и OnEnter" - это обработчики событий, сами по себе они существуют в виде каких-то подпрограмм, внутри делфи эти подпрограммы имеют эти имена и вызываются в ответ на соответствующую запись в очереди сообщений приложения(не важно кто дал команду переместить фокус на конкретное окно). Внутри они что-то делают, конкретно для OnEnter согласно смысла внутри выполняются какие-то действия в итоге приводящие к вызову системной функции установки фокуса, которой передается хендл окна(или присвоенный оконному элементу - полю ввода) и эта функция завершается с ошибкой, которая собственно и выскакивает. Но ошибка эта показывается не системой, та тихо вернула код ошибки и все - само приложение увидев эту ошибку вывело предупреждение. При этом обработчик закончил свое выполнение и вернул управление системе, возможно даже чего-то не доделав.
E_Bez и E_Package - классические объекты, по своему типу можно сказать что это обыкновенные поля ввода.
Причина этой ошибки ясна - попытка установить фокус на скрытое окно, или элемент ввода находящийся на скрытом окне. Зачем программе было устанавливать фокус на какой-то элемент ввода? Без исходников или комментариев от разработчика ответить на этот вопрос не получится(вариант реверс-инженеринга кода не рассматриваю из-за его бесперспективности и сложности). Возможно, просто напросто окно не должно было скрываться или программа не знает что окно скрыто в момент попытки перевести на него фокус. По хорошему, до того как перевести фокус на элемент ввода надо сделать его видимым на экране, программа этого не делает и получаем ошибку.
А то так все окна с компа вылетят и там ничего не останется!!! 
E_Bez и E_Package - классические объекты, по своему типу можно сказать что это обыкновенные поля ввода.
Причина этой ошибки ясна - попытка установить фокус на скрытое окно, или элемент ввода находящийся на скрытом окне. Зачем программе было устанавливать фокус на какой-то элемент ввода? Без исходников или комментариев от разработчика ответить на этот вопрос не получится(вариант реверс-инженеринга кода не рассматриваю из-за его бесперспективности и сложности). Возможно, просто напросто окно не должно было скрываться или программа не знает что окно скрыто в момент попытки перевести на него фокус. По хорошему, до того как перевести фокус на элемент ввода надо сделать его видимым на экране, программа этого не делает и получаем ошибку.
Срочно, срочно их лови!Какие то окна вылитают!
Re: ВСЁ про Sprint Layout
Вот чего выскакивает! Может вирус какой
- Вложения
-
- 1.jpg
- (57.6 КБ) 501 скачивание