Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Переменная типа date Добавлено: 05.11.03 23:06  

Автор вопроса:  NovichoK
Как правильно передать время переменной типа date?

Ответить

  Ответы Всего ответов: 13  

Номер ответа: 1
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #1
Добавлено: 05.11.03 23:26
Честно говоря геморрой все эти типы типа Date, Time - лучше вырезать их из Date и Time соот-но.

Ответить

Номер ответа: 2
Автор ответа:
 NovichoK



Вопросов: 72
Ответов: 147
 Профиль | | #2 Добавлено: 05.11.03 23:36
А по-человечески написать можно!?!

Ответить

Номер ответа: 3
Автор ответа:
 boevik



Хранитель чата

ICQ: 137392264 

Вопросов: 8
Ответов: 557
 Web-сайт: www.hypertech.ru
 Профиль | | #3
Добавлено: 05.11.03 23:50

Что значит передать? И какая база?

Обычно надо передавать в американском формате, т.е. mm/dd/yyyy

Если база Access, то дату надо заключить в #, т.е. #01/31/2001#

Ответить

Номер ответа: 4
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #4
Добавлено: 06.11.03 00:02

Можно и по-челевечески:

<th`im pyfxtybt bp  Time b Date cktle.obv j,hfpjv^

Шутка.

Лучше создать тип, свой и задавать значения для дня, месяца и года самому. Потому что такого рода переменные задолбаешся переводить в другие, а в твоём типе они будут все Integer и никаких проблем. Ну если и теперь не всё понятно, то давай аську растолкую пошагово.

Ответить

Номер ответа: 5
Автор ответа:
 NovichoK



Вопросов: 72
Ответов: 147
 Профиль | | #5 Добавлено: 06.11.03 00:04

В Вб объявляю перменную типа date.

Мне надо, что б эта перменная содержала только время, полученное мной.

К примеру

dim Seconds as byte, minutes as byte, hours as byte

dim time as date

seconds=55

minutes=23

hours=6

time=hours/minutes/seconds

Так что ли?Так не пашет

Ответить

Номер ответа: 6
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #6
Добавлено: 06.11.03 00:21

Маладец, парень. Так держать. Будешь так донимать вопросами - всегда будешь всё знать.

В модуле где-нибудь(чтоб не мешалась):

public type MyTime

            Hours as integer

            Mins as integer

            Secs as integer 'а лучше Sex 8)

end type

' там, где тебе надо:

dim ttt as mytime

ttt.hours=01

ttt.mins=17

ttt.secs=55

' и всё теперь когда надоеё записать где-нибудь то:

text.text=str(ttt.hours)+":"str(ttt.mins)+":"+str(ttt.secs)

Если что не понятно, или есть вопросы мыль tempneco@rambler.ru

Удачи!!!

Ответить

Номер ответа: 7
Автор ответа:
 Павел



Администратор

ICQ: 326066673 

Вопросов: 368
Ответов: 5968
 Web-сайт: www.vbnet.ru
 Профиль | | #7
Добавлено: 06.11.03 07:17
Гм... Попытаюсь всё же нормально ответить на поставленный вопрос.

Dim Seconds As Byte, minutes As Byte, hours As Byte
Dim time As Date
Seconds = 55
minutes = 23
hours = 6
time = DateAdd("h", hours, time)
time = DateAdd("n", minutes, time)
time = DateAdd("s", Seconds, time)
MsgBox CStr(time)

Ответить

Номер ответа: 8
Автор ответа:
 boevik



Хранитель чата

ICQ: 137392264 

Вопросов: 8
Ответов: 557
 Web-сайт: www.hypertech.ru
 Профиль | | #8
Добавлено: 06.11.03 09:27

Для задания времени и даты для переменной Date используй

DateSerial и TimeSerial.

Ответить

Номер ответа: 9
Автор ответа:
 Maxik



Вопросов: 58
Ответов: 201
 Профиль | | #9 Добавлено: 07.11.03 07:09
Может просто конвертировать.

time=cdate("hours/minutes/seconds")

Должно, по идеи, заработать...

Ответить

Номер ответа: 10
Автор ответа:
 boevik



Хранитель чата

ICQ: 137392264 

Вопросов: 8
Ответов: 557
 Web-сайт: www.hypertech.ru
 Профиль | | #10
Добавлено: 07.11.03 22:30

2Maxik: по идеи, сработает, но результат заране не определен.

К примеру, два компа на которых разные региональные установки, американская (мм/дд/уууу) и русская (дд.мм.уууу)

cdate(2/3/2003) - какой результат даст?

В американском формате - 3 февраля, а в русском 2 - марта.

Поетому, что б не было разногласий, надо использовать DateSerial. Он вернет дату в формате компа. И с ней можно работать функциями дат, DateAdd, dateDiff и т.д.

Ответить

Номер ответа: 11
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #11
Добавлено: 07.11.03 23:07
Мужики! Чё париться?!! Не легче объявить свой тип? В чём прикол использования всех этих функций? Даже если они быстрее - всё равно операции со временем (а тем более с датой) мало кому надо (и надо ли вообще?) применять чаще чем раз в секунду.

Ответить

Номер ответа: 12
Автор ответа:
 boevik



Хранитель чата

ICQ: 137392264 

Вопросов: 8
Ответов: 557
 Web-сайт: www.hypertech.ru
 Профиль | | #12
Добавлено: 07.11.03 23:21

Neco , конечно можно свой тип объявить. А дальше что?

Как произвести действия с твоим типом? А описать команды.

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

Ответить

Номер ответа: 13
Автор ответа:
 Neco



ICQ: 247906854 

Вопросов: 133
Ответов: 882
 Web-сайт: neco.pisem.net
 Профиль | | #13
Добавлено: 07.11.03 23:44

Ну не знаю. Можно, конечно. Только геморройный тип какой-то. Я каждый раз, когда пишу новую прогу, думаю: ну вот сегодня буду пользоваться стандартными средствами. И никогда терпения не хватает - так можно забыть, что за прогу писать начал. По-бытленькому накатал свой тип и всё. А операции кроме ввод/вывод я никакие не совершаю.

 

Но, наверное, всё же научусь работать с Date. Уговорил.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам