Вопрос № 32513: Здравствуйте, добрые люди! Не подскажете, как можно сделать UNDO, в основном работа идёт в TStringGrid. Спасибо....Вопрос № 32521: Здравствуйте уважаемые эксперты! С наступившим Вас 2006 годом.
Вчера долго искал ошибку в своей программе. Всё время вылетала Range Check Error. Потом наконец понял, что дело тут в аттрибутах файла. Вот в чём вопрос:
Есть переменная типа TSea...Вопрос № 32537: На форме есть TTrackBar, как сделать что бы TrackBar.Position ровнялось тому месту, где щёлкнули мышкой(как во всех медиа-плеерах)?...Вопрос № 32544: Здравствуйте, уважаемые эксперты.
Нужна Ваша помощь.
Есть модуль TrayIcon. Какой код и где необходимо написать в другом модуле, чтобы использовать процедуры TrayIcon. Спасибо за ответы....Вопрос № 32546: Доброго времени суток!
Как можно узнать какое процесс породил окно.
Спасибо....
Вопрос № 32.513
Здравствуйте, добрые люди! Не подскажете, как можно сделать UNDO, в основном работа идёт в TStringGrid. Спасибо.
Отправлен: 01.01.2006, 23:16
Вопрос задал: SuperMaxx (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Toxic~Fire
Здравствуйте, SuperMaxx!
Нужно создать переменную, или массив и записывать туда старое действие перед тем, как выполнить новое, а когда понадобится undo, то просто вернись к старой переменной(ным).
Ответ отправил: Toxic~Fire (статус: 2-ой класс)
Отправлен: 02.01.2006, 11:38 Оценка за ответ: 4
Отвечает: Лучников Юрий Владимирович
Здравствуйте, SuperMaxx!
Для начала нужно запоминать то, в отношении к чему нужно UNDO;)
Удобнее всего для этого использовать стек.
Успехов!
Ответ отправил: Лучников Юрий Владимирович (статус: 8-ой класс)
Отправлен: 02.01.2006, 14:02 Оценка за ответ: 2 Комментарий оценки: Бесполезный совет, ощущение что ответ ради ответа :-( < запоминать то, в отношении к чему нужно UNDO ну запомнил, в отношении StringGrid, а дальше что?, удалил человек строку, а потом отменил своё действие, и что я вытащу из стека? Это не текстовый редактор, уж намного и проще иметь несколько копий таблицы в памяти (или дампов).
Вопрос № 32.521
Здравствуйте уважаемые эксперты! С наступившим Вас 2006 годом.
Вчера долго искал ошибку в своей программе. Всё время вылетала Range Check Error. Потом наконец понял, что дело тут в аттрибутах файла. Вот в чём вопрос:
Есть переменная типа TSearchRec. Поле Attr у неё типа integer, хотя в принципе для задания известных мне аттрибутов хвати и одного байта. Так вот вчера выползла ошибка. Jpeg файл имеет аттрибуты 8224, что явно не вписывается ни в какие рамки. В файловом менеджере ничего необычного у этого файла нет. Он имеет аттрибуты -a--(32). Что означает аттрибут 8224 этого файла?
Приложение:
Отправлен: 02.01.2006, 08:53
Вопрос задал: Schmak (статус: Практикант)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Toxic~Fire
Здравствуйте, Schmak!
Извини, но я не совсем понял проблему,
попробуй так: в FindFirst FindNext в атрибутах поставь faAnyFile
А потом фильтруй файлы по маске *.jpg, *.jpeg
Или тебе самому нужно определять атрибуты файла?
У меня где-то был список всех атрибутов, могу выслать если что (их кстати не много)
Ответ отправил: Toxic~Fire (статус: 2-ой класс)
Отправлен: 02.01.2006, 11:47
Отвечает: sir henry
Здравствуйте, Schmak!
С аттрибутом какой-то явный непорядок. Вот смотрите:
faReadOnly 1
faHidden 2
faSysFile 4
faVolumeID 8
faDirectory 16
faArchive 32
faSymLink 64
faAnyFile 71
------------------------------
Итого 198
Т.е. макимум, что Вы можете получить в аттрибуте - цифра 198, т.к. каждый аттрибут занимает свой собственный разряд и для его описания действительно хватит всего одного байта.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 02.01.2006, 12:58 Оценка за ответ: 4 Комментарий оценки: Я вот тоже не могу понять, что за дела. Решил просто отсекать первые байты, т.е. брать остаток от деления на 256. Как ни странно, но 8224 mod 256=32, что мне и надо.
Вопрос № 32.537
На форме есть TTrackBar, как сделать что бы TrackBar.Position ровнялось тому месту, где щёлкнули мышкой(как во всех медиа-плеерах)?
В этом событии X,Y - координаты мышки на момент клика
Сопоставь их с координатами TrackBar и сможешь вычислить позицию, на которой должен быть TrackBar и соответственно перейти в файле на это место
Отвечает: Сергей Т.
Здравствуйте, Клёмин Сергей!
Поставь процедуру в TrackBar на событие MouseDown, в процедуре есть X и Y, бери что тебе нужно (зависит от расположения TrackBar'a) и используй.
Ответ отправил: Сергей Т. (статус: 1-ый класс)
Отправлен: 02.01.2006, 16:13 Оценка за ответ: 3 Комментарий оценки: У TrackBar'а нет события MouseDown.....
Вопрос № 32.544
Здравствуйте, уважаемые эксперты.
Нужна Ваша помощь.
Есть модуль TrayIcon. Какой код и где необходимо написать в другом модуле, чтобы использовать процедуры TrayIcon. Спасибо за ответы.
Отвечает: Ерёмин Андрей
Здравствуйте, Mybestpostbox!
Ой. Это же модуль компонента. Его нужно просто установить. Открывайте Component - Install component. В поле Unit file name щёлкайте Browse и выбирайте этот модуль. Потом Compile, Install. Если установка пройдёт без проблем, на вкладке Standard этот компонент появится. А если будут проблемы - возьмите компонент CoolTrayIcon. Он очень удобный.
--------- Работа - не волк, а произведение силы на расстояние!
Ответ отправил: Ерёмин Андрей (статус: Профессионал)
Отправлен: 02.01.2006, 21:41
Вопрос № 32.546
Доброго времени суток!
Как можно узнать какое процесс породил окно.
Спасибо.
Отвечает: Diman_A
Здравствуйте, Mybestpostbox!
Вот программа, которая узнает многое о чужих окнах, в т.ч. и имя exe-шника
Пиши мне aganovdiman@mail.ru, вышлю полные исходники
Приложение:
Ответ отправил: Diman_A (статус: 2-ой класс)
Отправлен: 03.01.2006, 11:01