Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 321
от 11.12.2005, 17:36

Администратор:Калашников О.А.
В рассылке:Подписчиков: 256, Экспертов: 50
В номере:Вопросов: 4, Ответов: 19


Вопрос № 30873: Подскажите как закодировать: чтобы при нажатии Button в Label записивалась дата и время из Windows...
Вопрос № 30916: Приветсвую! Что-то нет ответов на мои вопросы... Слишком сложные что-ли?? Или я такой вумный :(... попробую "простой" вопрос задать: Есть D5 и D7. Использую DBGrid - MultiSelect = True Но вот не получается...
Вопрос № 30921: Я хочу узнать структуру файла форматов MP3, AMR и WAV...
Вопрос № 30924: ой! А подскажите, пожалуйста еще!? Есть 2 формы f1 и f2. На них есть запросы f1.q1 и f2.q1. Из главной формы Main я создаю f1 или f2. Потом меняю запрос - SQL, Parametr и т.д. сложно очень строится сам текст запроса. Причем ...

Вопрос № 30.873
Подскажите как закодировать: чтобы при нажатии Button в Label записивалась дата и время из Windows
Отправлен: 06.12.2005, 02:05
Вопрос задала: Артемова Марина (статус: Посетитель)
Всего ответов: 9
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: Bochvarov NikB
Здравствуйте, Артемова Марина!
procedure tForm1.Button1OnClick(Sender...)
begin
Label1.Caption:=DateTimeToString(Now);
end;

Смотри и Date/time routines в Delphi/Help
Ответ отправил: Bochvarov NikB (статус: 4-ый класс)
Отправлен: 06.12.2005, 02:53
Оценка за ответ: 5

Отвечает: sir henry
Здравствуйте, Артемова Марина!
Примерно вот так:
Label1.Caption:=DateTimeToStr(Now);
Если нужны дата и время по отдельности в своих составляющих (год, месяц, час, минуты и т.п.), то есть процедуры разбиения типа TDateTime на эти составляющие:
procedure DecodeDate(Date: TDateTime; var Year, Month, Day: Word);
procedure DecodeTime(Time: TDateTime; var Hour, Min, Sec, MSec: Word);
Ответ отправил: sir henry (статус: Академик)
Отправлен: 06.12.2005, 04:39

Отвечает: Vbhjndjhtw
Здравствуйте, Артемова Марина!
Вот исходник. В событии таймера OnTimer выбери ButtonClick.
P.S. Исходник работает под Delphi7

Приложение:

---------
Бороться и искать, найти и перепрятать!

Ответ отправил: Vbhjndjhtw (статус: 6-ой класс)
Отправлен: 06.12.2005, 07:28

Отвечает: Архангельский Андрей Германович
Здравствуйте, Артемова Марина!

Label.caption := FormatDateTime('dd" "MMMM" "YYYY"г." HH:MM:ss:zzz',Now);

Now - это специальная переменная, которая возвращает текущее время
Format - это текстовая строка, которая описывает как его изобразить. См. Help для других вариантов
Ответ отправил: Архангельский Андрей Германович (статус: Студент)
Отправлен: 06.12.2005, 10:25

Отвечает: Лучников Юрий Владимирович
Здравствуйте, Артемова Марина!

Код в приложении... Напишите его в обработчике OnClick кнопки.
Объект Label1 должен быть на форме
Надеюсь поможет;)

Приложение:

Ответ отправил: Лучников Юрий Владимирович (статус: 3-ий класс)
Отправлен: 06.12.2005, 14:48

Отвечает: Vadim Vitomsky
Здравствуйте, Артемова Марина!
В Delphi есть функция Now : TDateTime, которая возвращает текущие дату и время.
Все, что Вам необходимо - преобразовать их в строку в том формате, который Вам нужен.
Для этого служат функции DateToStr и TimeToStr, а также ряд других, о которых можно узнать в стандартном хелпе.
Ответ отправил: Vadim Vitomsky (статус: 5-ый класс)
Отправлен: 06.12.2005, 14:55

Отвечает: Golden Spider
Здравствуйте, Артемова Марина!

Попробуйте так
Label1.Caption:='Текущее время: '+DateTimeToString(Now);


---------
Знания ничто! Хорошие знания Всё!
Ответ отправил: Golden Spider (статус: 3-ий класс)
Отправлен: 06.12.2005, 16:29

Отвечает: Denis Hakimov
Здравствуйте, Артемова Марина!
Используйте функцию преобразования даты в строку DateToStr(Date);

Приложение:

Ответ отправил: Denis Hakimov (статус: 5-ый класс)
Отправлен: 06.12.2005, 20:40

Отвечает: Schmak
Здравствуйте, Артемова Марина!
Для определения текущего времени можно использовать переменнные
Now - текущая дата и время
Time - текущее время
Date - текущая дата
Для перевода даты в строку соответствующие функции
DateToStr, TimeToStr, DateTimeToStr
Решить Вашу задачу можно следующим образом:
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:=DateTimeToStr(now)
end;


---------
Не всё то Windows, что висит!
Ответ отправил: Schmak (статус: Студент)
Отправлен: 08.12.2005, 14:47


Вопрос № 30.916
Приветсвую!

Что-то нет ответов на мои вопросы... Слишком сложные что-ли?? Или я такой вумный :(...

попробую "простой" вопрос задать:

Есть D5 и D7.
Использую DBGrid - MultiSelect = True
Но вот не получается, как в виндусе - щелкнул первую запись, нажал shift + щелкнул последнюю запись = выделились все записи между первой и второй.

Как исправить или чего дописать в код?

P.S. сторонние компоненты использовать низя.
Отправлен: 06.12.2005, 14:53
Вопрос задал: LanK (статус: 3-ий класс)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Лучников Юрий Владимирович
Здравствуйте, LanK!

Вам следует обратить на поле-множество компонента Options.
В частности есть свойство dgMultiSelect которая разрешает множественное выделение;)
Ответ отправил: Лучников Юрий Владимирович (статус: 3-ий класс)
Отправлен: 06.12.2005, 15:06

Отвечает: sir henry
Здравствуйте, LanK!
А я, если честно, первый раз об этом слышу. Решил проверить, может я чего пропустил, однако в VFP та же картина - так как Вы говорите, он не делает. Вы уверены в своем утверждении?
Мультиселект работает стандартным для винды способом, т.е. если его включить, то нажимая одновременно шифт+стрелка, то выделяются все соедние поля. Если выключить, то не выделяются.
А где, в какой проге Вы видели то, о чем Вы говорите?
Ответ отправил: sir henry (статус: Академик)
Отправлен: 06.12.2005, 15:31


Вопрос № 30.921
Я хочу узнать структуру файла форматов MP3, AMR и WAV
Отправлен: 06.12.2005, 15:42
Вопрос задал: E.T.T (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: sir henry
Здравствуйте, E.T.T!
www.yandex.ru
или
www.google.ru
Набираете в строке запроса за три захода:
- структура файла mp3
- структура файла amr
- структура файла wav
Вы интернетом умеете пользоваться?
Ответ отправил: sir henry (статус: Академик)
Отправлен: 06.12.2005, 16:21

Отвечает: REFERI
Здравствуйте, E.T.T!
Смотрите в приложении...
Удачи!

Приложение:

---------
Не судите, да не судимы будете...

Ответ отправил: REFERI (статус: Студент)
Отправлен: 06.12.2005, 16:34

Отвечает: Vbhjndjhtw
Здравствуйте, E.T.T!
Смотри здесь http://www.delphimaster.ru/articles/mp3format/index.html
---------
Бороться и искать, найти и перепрятать!
Ответ отправил: Vbhjndjhtw (статус: 6-ой класс)
Отправлен: 07.12.2005, 07:05


Вопрос № 30.924
ой! А подскажите, пожалуйста еще!?

Есть 2 формы f1 и f2. На них есть запросы f1.q1 и f2.q1.
Из главной формы Main я создаю f1 или f2.
Потом меняю запрос - SQL, Parametr и т.д. сложно очень строится сам текст запроса.

Причем вся начинка (по действиям) одинаковая - мне нужно только менять оформление форм. Но нужно увы именно две формы.

Как сделать что-то типа:

if cb.Checked then
Application.CreateForm(Tf1, f1)
else
Application.CreateForm(Tf2, f2);

if cb.Checked then
f1.q1.SQL.Text := 'cccc'
else
f2.q1.SQL.Text := 'cccc';

и так далее? Наверняка как то поумному можно сделать, а не
вставлять 20 раз конструкцию if then?

типа найти комопнент TQuery "забрать" на него ссылку и работать уже с ней?

Помогите плиз! Спасибо.

Отправлен: 06.12.2005, 16:57
Вопрос задал: LanK (статус: 3-ий класс)
Всего ответов: 5
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Архангельский Андрей Германович
Здравствуйте, LanK!

А кто мешает посадить Query на главную форму и работать с ним из любого количества форм?

Непонятна твоя задача - и офрмление формы можно менять динамически, и к одному коннекту можно присобачить несколько Query с разными запросами.
Если насчет 20 штук If сложно, то используй Case
Ответ отправил: Архангельский Андрей Германович (статус: Студент)
Отправлен: 06.12.2005, 17:14

Отвечает: Полищук Владислав Игоревич
Здравствуйте, LanK!
Сделайте базовую форму для этих двух, потом

var
xForm:TBaseForm;
begin
if cb.Checked
then xForm:=f1
else xForm:=f2;

xForm:=q1.SQL.Text := 'cccc';
и т.д.

Если что не понял - спрашивай.

---------
Чтобы вчера не случилось, радуйся новому дню
Ответ отправил: Полищук Владислав Игоревич (статус: 2-ой класс)
Отправлен: 06.12.2005, 17:28

Отвечает: Маренич Владимир
Здравствуйте, LanK!
Можно завести глобальную переменную и работать с ней:
var
glq: TQuery;

Приложение:

Ответ отправил: Маренич Владимир (статус: 9-ый класс)
Отправлен: 06.12.2005, 17:29

Отвечает: sir henry
Здравствуйте, LanK!
Не вижу здесь ничего непонятного. Просто вместо двух IF используйте одно и ограничте группу функций скобками Begin .. End. У форм можно убрать видимость (Visible:=False) и открывать его в своей конструкции либо, если Вы не хотите создавать формы с самого начала, нужно в опциях проекта убрать их автосоздание.
If cb.Checked Then
begin
f1.Visible:=True;
f1.q1.SQL.Text:='ccc';
End
Else
Begin
f2.Visible:=True;
f2.q1.SQL.Text:='ccc';
End;
Либо второй вариант, с созданием:
If cb.Checked Then
begin
f1:=TForm1.Create(Self);
f1.Show;
f1.q1.SQL.Text:='ccc';
End
Else
Begin
f2:=TForm2.Create(Self);
f2.Show;
f2.q1.SQL.Text:='ccc';
End;
Правда у меня есть смутные подозрения, что Вы слишком заумно описали вопрос. Если я ответил не то, что Вы ожидали, то уточните его.
Ответ отправил: sir henry (статус: Академик)
Отправлен: 06.12.2005, 17:33

Отвечает: Tsechoev Bagaudin
Здравствуйте, LanK!
Вообще в Делфи есть невидимая форма DataModule, все свои запросы кладешь туда. В юниты форм 1 и 2 подключаешь юнит DataModule. Все свои компоненты на формах увязываешь через DataSource с соответствующими компонентами Query. А формировать запрос можешь прямо при создании формы 1 или 2. Вот и все.
---------
Есть только одно зло - невежество, и только одно благо - знания
Ответ отправил: Tsechoev Bagaudin (статус: Студент)
Отправлен: 06.12.2005, 18:08


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
Авторские права | Реклама на портале
Яндекс Rambler's Top100 hotlog_js="1.0"; hotlog_r=""+Math.random()+"&s=314124&im=101&r="+escape(document.referrer)+"&pg="+ escape(window.location.href); document.cookie="hotlog=1; path=/"; hotlog_r+="&c="+(document.cookie?"Y":"N"); hotlog_js="1.1";hotlog_r+="&j="+(navigator.javaEnabled()?"Y":"N") hotlog_js="1.2"; hotlog_r+="&wh="+screen.width+'x'+screen.height+"&px="+ (((navigator.appName.substring(0,3)=="Mic"))? screen.colorDepth:screen.pixelDepth) hotlog_js="1.3" hotlog_r+="&js="+hotlog_js; document.write("HotLog")

Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Архив рассылки
Отписаться
Вспомнить пароль

В избранное