-
> почему удален? ссылка изменена, а новая в выбранный фильтр > не попадает. да и вообще это может быть временное изменение. >
Ок, в таком случае обновление не нужно. Возможно, временно не нужно.
-
> но вот как то я ее не воспринимаю как программу по работе > с субд
Ну скажем так, это небольшая часть программы. И там я, дабы не менять архитектуру, тупо на таймер повесил выборку записей, время которых больше максимального в последней выборки. Кстати, тоже ещё те пляски с бубном были с MSSQL и его 0, 3 и 7 дискретами в миллисекундах.
-
Ega23 © (10.01.12 14:33) [158]
Речь про многопользорвательские программы. Сидишь, читаешь анекдоты в Notepad, в это время начальник удаляет у тебя соответствующий файл. В идеале, Notepad должен написать "Файл был удален пользователем "Big Boss" с комментарием "Живо работать!" :)
-
> в это время начальник удаляет у тебя соответствующий файл. не у тебя, а в сети/базе откуда ты его взял. а к тебе это изменение типа "автоприлетело".
-
> Речь про многопользорвательские программы. Сидишь, читаешь > анекдоты в Notepad, в это время начальник удаляет у тебя > соответствующий файл. В идеале, Notepad должен написать > "Файл был удален пользователем "Big Boss" с комментарием > "Живо работать!" :) >
В идеале просмотр анекдота в Notepad логически равнозначен созданию отчёта по данному анекдоту. Который, ваще-та, должен блокироваться от изменений на это время.
-
sniknik © (10.01.12 14:48) [163]
Он его взял из файловой системы. Из нее и автоприлетит уведомление об удалении файла. Кстати, Notepad++ замечает, что файл был удален и спрашивает, продолжить ли его просмотр или закрыть...
Ega23 © (10.01.12 14:51) [164]
Значит, твоя аналогия неверна...
-
> Который, ваще-та, должен блокироваться от изменений на это время. это при нормальной работе, с которой "автообновление" (полное, без ограничивающих условий) конфликтует. т.е. либо либо. а если - тут делаем, тут не делаем, а тут рыбу заворачивали, то это уже должно быть подробно описано. желаемая логика.
-
> Кстати, Notepad++ замечает, что файл был удален и спрашивает, продолжить ли его просмотр или закрыть... локально? а если из сети открыть?
-
> Кстати, Notepad++ замечает, что файл был удален и спрашивает, > продолжить ли его просмотр или закрыть...
Вопрос: когда он это замечает?
-
Вообще предлагаю закончить спор следующим: лучше иметь программу, которая позволяет пользователю настроить автообновление. Потому как программа, которая этого не позволяет, получается из первой путем chAutoRefresh.visible := false и chAutoRefresh.checked := false :)
-
> Вопрос: когда он это замечает? да это в общем то не сложно, система оповещает о событиях/изменениях в локальных файлах... (на дельфимастере даже статья с примерами есть, могу найти)
-
Не надо подменять понятия "автонажимание на Refresh" и обновление по событию. Это совершенно разные вещи.
-
sniknik © (10.01.12 15:03) [166]
Так я ж и говорю - смотрим ТЗ и делаем, что там написано.
sniknik © (10.01.12 15:04) [167]
Не знаю, не могу проверить. Просить коллегу удалить файл не хочется.
Ega23 © (10.01.12 15:04) [168]
При переключении (Application.onActivate) на него точно делает. Когда еще делает, не знаю, потому как для удаления файла я должен deactivate notepad++, а потом срабатывает onActivate и см. выше...
-
sniknik © (10.01.12 15:07) [170]
Оповещение выскакивает только в том случае, если notepad++ является активным приложением.
-
> да это в общем то не сложно, система оповещает о событиях/изменениях > в локальных файлах... (на дельфимастере даже статья с примерами > есть, могу найти)
Не в этом дело. Окошко возникает в момент активизации окна нотепада. До этого он как висел на другом мониторе (в моём случае), так и висел, хоть всё поудаляй а потом насоздавай заново но уже с другим содержимым.
-
Ega23 © (10.01.12 15:08) [171]
Да, согласен. AutoUpdate лучше подходит наверное.
-
> Вообще предлагаю закончить спор следующим: лучше иметь программу, ... которая которая работает правильно вопреки желаниям клиента... и если автообновление не нужно/лишнее/в разрез логике, а клиент тем не менее "хочет", то нафиг такого клиента! и это не шутка, проще послать "замудрого" клиента насмотревшегося фантастики в детективах, чем после терять из-за него деньги.
-
> До этого он как висел на другом мониторе (в моём случае), так и висел, хоть всё поудаляй а потом насоздавай заново но уже с другим содержимым. так это не автоапдейт, это событийный, т.е. типа закончили редактировать документ, сохранили и по нему обновляется список заголовков документов. это ВЕЗДЕ есть.
-
> Когда еще делает, не знаю, потому как для удаления файла > я должен deactivate notepad++, а потом срабатывает onActivate > и см. выше... >
Ну вот тебе простой код:
unit Unit31;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;
type
TForm31 = class(TForm)
Timer1: TTimer;
Label1: TLabel;
Button1: TButton;
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
public
end;
var
Form31: TForm31;
implementation
procedure TForm31.Button1Click(Sender: TObject);
begin
Timer1.Enabled := True;
end;
procedure TForm31.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled := False;
if DeleteFile('E:\1.txt') then
Label1.Caption := 'OK'
else
Label1.Caption := 'Fail';
end;
end.
Очень показательно твоё "автообновление".
-
Ega23 © (10.01.12 15:17) [178]
Это к чему? Я уже 3 раза писал, что всё определеятся пожеланиями заказчика. Веришь, что есть способ реализовать автообновление notepad++ таким образом, чтобы он не требовал onActivate для оповещения?
ЗЫ. У меня на компе давно нет Delphi. Точнее, на этом и не было никогда.
|