Здрасти всем. Вот тут вопрос возник. У меня есть label с caption:='12:00:00'. Как теперь мне енто время установить в системе. Естественно по средствам Delphi. Только попроще если можно. Спасибо.
Ответ отправлен: 09.08.2002, 22:26 Отправитель: Pablo Отвечает Артём Шегеда
Приветствую Вас, PC Gamer!
"По средствам Delphi" не выйдет - только API:
type SYSTEMTIME = record wYear:WORD; wMonth:WORD; wDayOfWeek:WORD; wDay:WORD; wHour:WORD; wMinute:WORD; wSecond:WORD; wMilliseconds:WORD; } SYSTEMTIME; function SetLocalTime(const lpSystemTime:SYSTEMTIME):boolean;
Приложение: Ответ отправлен: 09.08.2002, 20:22 Отправитель: Артём Шегеда Отвечает Sanya
Здравствуйте, PC Gamer! Используй API что-то типа: Uses ShellApi; procedure TForm1.Button1Click(Sender: TObject); var DTime:SYSTEMTIME; begin DTime.wHour:=15; DTime.wMinute:=10; DTime.wSecond:=00; SetLocalTime(DTime); end; На работоспособность правда не проверял! Удачи! Ответ отправлен: 10.08.2002, 09:15 Отправитель: Sanya
Вопрос № 121
Привет эксперты! Столкнулся с такой ситуацией: СУБД paradox7; В бд есть поля logical, соответственно принимающее знач true/false. Так вот, при созданиии новой записи (insert) я обнуляю (checked:=false) DBCheckBox'ы иначе они - Grayed по dafault'у, затем некоторые устанавливаю в true в итоге при post - нетронутые но обнуленные в начале дбчекбоксы принимают значение grayed. Пробовал их автоматом устанавливать в одном обработчике до post'a - все та же фигня... И использование DBCheckBox.AllowGrayed:=true/false ожидаемых результатом не принес... Подскажите, что я проглядел? Спасибо! -- Atma Manas
Доброе время суток, Atma! А у тебя случаем нету процедурок DBCheckBoxClick, а то они срабатывают когда ты меняешь состояние checked, может в этом дело? Удачи! Ответ отправлен: 12.08.2002, 02:37 Отправитель: Sanya
Вопрос № 122
Привет эксперты! Как программно кликнуть на DBCheckBox? На сколько я понимаю - SendMessage ......? Thank's!
Приветствую Вас, AsteZX! Да типа можно и проще сделать. можно просто так вот: CheckBox1.Checked:=not CheckBox1.Checked; При этом событие чекбокса OnClick срабатывает (посмотри хелп на TControl.OnClick). Ответ отправлен: 13.08.2002, 23:03 Отправитель: Painbringer Отвечает Sanya
Добрый день, AsteZX! Зачем такие сложности? DBCheckBox1.OnClick(sender); Удачи! Ответ отправлен: 13.08.2002, 09:55 Отправитель: Sanya Отвечает Артём Шегеда
Добрый день, AsteZX!
Можно, конечно, и SendMessage, но практичнее так:
(DBCheckBox1 as TCustomCheckBox).Click;
Это некрасиво, но по-моему, должно работать. А что,
if not(DBCheckBox1.DataSource.State in [dsInsert,dsEdit] then DBCheckBox1.DataSource.Edit; DBCheckBox1.Field.AsBoolean = not DBCheckBox1.Field.AsBoolean;
- не работает? А то, что написал Sanya, справедливо только для обработки событий - не более того. Кликнуть таким образом не получится.
Ответ отправлен: 13.08.2002, 12:25 Отправитель: Артём Шегеда Отвечает Igoryk
Доброе время суток, AsteZX! Лучше всего используй код: DBCheckBox.Value := Not(DBCheckBox.Value)
Ответ отправлен: 13.08.2002, 13:10 Отправитель: Igoryk Отвечает Pablo
Здравствуй, AsteZX! Эти два сообщения эмулируют клик в координате 0,0 только вот не уверен чего чекбокса или клиентской области окна. SendMessage(DBCheckBox1.Handle, WM_LBUTTONDOWN, MK_LBUTTON, MAKELONG(0,0)); SendMessage(DBCheckBox1.Handle, WM_LBUTTONUP, MK_LBUTTON, MAKELONG(0,0));
Ответ отправлен: 14.08.2002, 22:54 Отправитель: Pablo
Форма отправки вопроса
Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook"
и "Microsoft Outlook Express". В программе The Bat!
подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте,
что в некоторых браузерах могут стоять запреты на открытие других
окон, а также "чрезмерное" кэширование данных,
при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet
Explorer 5.0+ или отправлять вопросы с сайта по адресу:
http://rusfaq.ru/cgi-bin/Message.cgi.