Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 07.10.2011, 10:37
Source Source вне форума
Прохожий
 
Регистрация: 16.02.2010
Сообщения: 12
Репутация: 101
По умолчанию Edit

В общем такая ситуация: на странице есть много Edit-ов. Текст из каждого едита записывается в файл (как параметр edit1=param). У Edit есть евент onExit, правильно ли будет в него (в этот евент) добавить запись в файл ? Или лучше будет сделать кнопку которая разом запишет данные из всех едитов ?
Ответить с цитированием
  #2  
Старый 07.10.2011, 11:00
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

я бы сделал кнопку, и при нажатии на неё сразу бы закрывал это окно
Ответить с цитированием
  #3  
Старый 07.10.2011, 13:06
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
Радость

все зависит от того на сколько длинный и важный текст пользователь будет писать в Edit'ы. вот, к примеру, пользователь написал уже 256 букв и произошло APPCRASH или еще хуже WINCRASH. естественно весь текст потеряется. а вот если сохранять текст в событии OnChange, то ничего не потеряется)
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #4  
Старый 07.10.2011, 13:54
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

В большинстве программ параметры (я так понял, что речь идёт о чём то похожем) обычно сохраняются кнопками "Применить" и "Закрыть", кроме этого существует ещё и возможность отмены (Cancel). Закрытие через крестик обычно сохраняет, хотя в некоторых старых программах наблюдал, что действовало, как отмена.
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!

Последний раз редактировалось Viajero, 07.10.2011 в 13:57.
Ответить с цитированием
  #5  
Старый 07.10.2011, 14:50
Аватар для NumLock
NumLock NumLock вне форума
Let Me Show You
 
Регистрация: 30.04.2010
Адрес: Северодвинск
Сообщения: 5,426
Версия Delphi: 7, XE5
Репутация: 59586
По умолчанию

Цитата:
Сообщение от Viajero
Закрытие через крестик обычно сохраняет, хотя в некоторых старых программах наблюдал, что действовало, как отмена.
наоборот, закрытие через крестик не применяет изменения.
пример: клик правой мышкой на раб. столе - Свойства - Темы - выбираем другую - Жмем крестик. тема не изменилась.
в редакторе кода Delphi: Ctrl+R, text to find = "class", replace with="unit". Жмем крестик. замены нет.
по теме: восстанавливай значения в OnCreate, сохраняй в OnDestroy. про APP- и WIN-CRASH не думай
__________________
Пишу программы за еду.
__________________
Ответить с цитированием
  #6  
Старый 07.10.2011, 15:12
Source Source вне форума
Прохожий
 
Регистрация: 16.02.2010
Сообщения: 12
Репутация: 101
По умолчанию

Текст, который вводит пользователь не такой большой. 3-4 знака..
Мне больше всего интересно "затратная" ли это операция ? Т.е. если после каждого onExit в файл будет писаться новые значения (было edit1=para1, заменилось на edit1=para2)..
Ответить с цитированием
  #7  
Старый 07.10.2011, 15:12
Аватар для Viajero
Viajero Viajero вне форума
Активный
 
Регистрация: 14.06.2011
Адрес: РБ
Сообщения: 214
Версия Delphi: Delphi 7 FB 2.5
Репутация: 5849
По умолчанию

Цитата:
Сообщение от NumLock
наоборот, закрытие через крестик не применяет изменения.
Правильные программы ,IMHO, спрашивают (выскакивает диалоговое окно) сохранить? "да", "нет". Windows , IMHO, не образец правильной программы.
__________________
- Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА!
Ответить с цитированием
  #8  
Старый 07.10.2011, 15:17
Аватар для Ildar-tsr
Ildar-tsr Ildar-tsr вне форума
Местный
 
Регистрация: 09.08.2011
Адрес: г.Сургут, ХМАО
Сообщения: 453
Репутация: 7402
По умолчанию

Практически ВСЕГДА и практически ВЕЗДЕ делается сохранение данных на нажатие кнопки. Если же вводится большое количество различных параметров, то обычно заполнение делиться на несколько этапов (точнее на несколько блоков). А как реализовывать конкретно в вашем случае, зависит от потребностей ваших пользователей. Если им все равно, делайте как по вашему наиболее "правильно". Если не можете определить наиболее "правильный" способ, то делайте как удобнее.
__________________
Google в помощь
Ответить с цитированием
  #9  
Старый 07.10.2011, 15:36
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

На затратность я бы смотрел в последнюю очередь, главное чтобы было логично
для себя делал мини-редактор для скриптов, он никогда не спрашивает, а всегда сохраняет при выходе - ни диалогов, ни кнопок

зы вариант сохранить без выхода спрятан в контекстном меню

Последний раз редактировалось Pyro, 07.10.2011 в 16:28.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 05:12.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025