Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.03.2011, 18:10   #1
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
Стрелка SpinEdit1Change и myIni.WriteInteger как совместить

когда ввожу в ручную выдает ошибку, видимо изза того что на мгновение спинедит остаеца пустым
Код:
procedure TForm1.SpinEdit1Change(Sender: TObject);
begin
  try
    myIni.WriteInteger('section', 'index', SpinEdit1.Value);
  except end;
end;
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 09.03.2011, 18:24   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

может стоит по OnExit или закрытию формы(нажатию кнопки сохранить/принять)?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 09.03.2011, 18:31   #3
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

так и делал, но сеичас для программы нужно как только изменяеца сохранять
показ SlideShow и в то же время возможность редактировать, в даном случае время задержки картинки
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 09.03.2011, 19:36   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

попробуй делать вот такую проверку.....
Код:
procedure TForm1.SpinEdit1Change(Sender: TObject);
function Check(und:integer):integer;
begin
If und = '' then Result:=0;
end;

begin
    myIni.WriteInteger('section', 'index', Check(SpinEdit1.Value));
end;
Хз что там у тебя за допотопность, что сам компонент не делает эту CHECK
Мб просто ini не инициализирован?

Последний раз редактировалось Человек_Борща; 09.03.2011 в 19:38.
Человек_Борща вне форума Ответить с цитированием
Старый 09.03.2011, 19:53   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

вот так работает:
Код:
procedure TForm1.SpinEdit1Change(Sender: TObject);
  function Check(it: integer): Integer;
  begin
    if VarIsEmpty(it) then
      Result := 0;
  end;
var
  a: Integer;
begin
  a := Check(SpinEdit1.Value);
end;
Человек_Борща вне форума Ответить с цитированием
Старый 10.03.2011, 16:01   #6
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

код всетаки оказался рабочим, ток для етого надо запустить уже откомпилированую ехе
Код:
procedure TForm1.SpinEdit1Change(Sender: TObject);
begin
  try
    myIni.WriteInteger('section', 'index', SpinEdit1.Value);
  except end;
end;
подробнее
http://programmersforum.ru/showthread.php?t=141726
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 10.03.2011, 16:47   #7
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

блин, ну так правильно, в режиме отладки то исключения всегда показываются(но нажав продолжить можно передать управление обработчику)
я просто думал вы знаете это, и у вас отключен показ исключений(или без отладки запущено)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 10.03.2011, 22:14   #8
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

остался еше вопрос, не хочеца за ето создавать новую тему
етим кодом я считываю значение для SpinEdit из ini, а Default у меня его прошлое значение
Код:
SpinEdit1.Value := myIni.WriteInteger('section', 'index', SpinEdit1.Value);
так вот, если чтение не произоидет, будет ли ошибка?
тоесть что происходит раньше
обнуление значения спина, потом считывание с ини, если не считалось, присваеваеца значение по умолчанию (и думаю ошибка)
или
сперва читаеца из ini, если не считалось, береца старое значение и переприсваиваеца
VirusN13
ArtGrek вне форума Ответить с цитированием
Старый 11.03.2011, 08:46   #9
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

второе, вначале считывается, если не считалось то ставится дефолтное, потом уже присваивание, собственно нормальный ход работы составных операторов.

Цитата:
Сообщение от ArtGrek
я считываю
Цитата:
Сообщение от ArtGrek
Код:
WriteInteger
определитесь уж, не путайте других, не все же телепаты ))
phomm вне форума Ответить с цитированием
Старый 11.03.2011, 10:04   #10
ArtGrek
DelphiProger
Участник клуба
 
Аватар для ArtGrek
 
Регистрация: 14.11.2010
Сообщений: 1,023
По умолчанию

Цитата:
определитесь уж, не путайте других, не все же телепаты ))
sorry
SpinEdit1.Value := myIni.ReadInteger('section', 'index', SpinEdit1.Value);

спасибо
VirusN13
ArtGrek вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как совместить эти 2 скрипта, или что необходимо подправить? МIX JavaScript, Ajax 0 19.12.2009 09:03
работа с реестром WriteInteger __@cmd@__ Общие вопросы Delphi 12 11.07.2009 04:33
WriteInteger xLoMMx Общие вопросы C/C++ 8 05.07.2009 20:45
как совместить C++ и Visual C++ Paul_AG Visual C++ 2 13.04.2009 19:47
Как совместить Ttabcontrol и tpagecontrol ? UnD)eaD)Snake Общие вопросы Delphi 6 28.07.2007 14:23