Дата и время нажатия

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Decaz
Обычный пользователь
Обычный пользователь
 
Сообщения: 86
Зарегистрирован: 30.09.2004 (Чт) 19:43
Откуда: Москва

Дата и время нажатия

Сообщение Decaz » 04.03.2005 (Пт) 21:52

Как сделать так, чтобы при нажатии кнопки в Label1.Caption отображалась дата и время нажатия?

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 04.03.2005 (Пт) 22:19

Код: Выделить всё
Private Sub Command1_Click()
    Label1 = Now
End Sub
Изображение

Decaz
Обычный пользователь
Обычный пользователь
 
Сообщения: 86
Зарегистрирован: 30.09.2004 (Чт) 19:43
Откуда: Москва

Сообщение Decaz » 04.03.2005 (Пт) 22:49

Спасибо!

Ruslan Demidow
Мужчина!
Мужчина!
Аватара пользователя
 
Сообщения: 987
Зарегистрирован: 25.03.2004 (Чт) 13:39
Откуда: N.Novgorod

Сообщение Ruslan Demidow » 05.03.2005 (Сб) 12:15

Decaz писал(а):Спасибо!
Кстати, иногда я забываю у лабелов и текстбоксов указать свойство Caption и Text соответственно.
И всё-равно срабатывает.
Т.е. код выглядит так
Код: Выделить всё
Text1="Test"
lblTest="Proba"

Насколько безопасен данный код, по сравнению со стандартным написанием?
Код: Выделить всё
Text1.Text="Test"
lblTest.Caption="Proba"


Тоже самое срабатывает с чекбоксами.
Т.е. если например в настройках программы нужно в зависимости от значения чекбокса (отмечен/неотмечен) присвоить значение булевой переменной.
Код: Выделить всё
blnTest=abs(chkTest)
'или
chkTest=blnTest

Последний кусок кода вполне работоспособен, но насколько это "правильно" по использованию и безопасно в смысле багов и т.п?
Это Ж-ж-ж-ж неспроста (с) Винни-Пух

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 05.03.2005 (Сб) 12:16

Совершенно безопасно и правильно. Но кому-то это нравится, а кому-то нет: дело вкуса.
Изображение

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 05.03.2005 (Сб) 12:22

Если посмотришь в Object Browser, увидишь, что свойства Caption, Text, Value являются дефолтовыми. Поэтому ты и можешь использовать такую "сокращенную" запись.
Lasciate ogni speranza, voi ch'entrate.

-=TsA=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 142
Зарегистрирован: 21.09.2004 (Вт) 14:32
Откуда: Татарстан, Заинск

Сообщение -=TsA=- » 05.03.2005 (Сб) 12:28

tyomitch писал(а):Совершенно безопасно и правильно. Но кому-то это нравится, а кому-то нет: дело вкуса.


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

-=TsA=-
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 142
Зарегистрирован: 21.09.2004 (Вт) 14:32
Откуда: Татарстан, Заинск

Сообщение -=TsA=- » 05.03.2005 (Сб) 12:29

tyomitch писал(а):Совершенно безопасно и правильно. Но кому-то это нравится, а кому-то нет: дело вкуса.


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

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 05.03.2005 (Сб) 12:40

Так и не понял - что плохого в том, что эффективное использование возможностей конкретного языка войдёт в привычку?

В каждом языке есть пачка таких "неповторимых особенностей", и что, от всех них нужно отказаться?

Точно так же можно аргументировать, скажем, что использование оператора "++" в C - плохой подход, подому что в других языках этого оператора нет. И однако никто не отказывается от ++ из-за этого.
Изображение

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 05.03.2005 (Сб) 12:55

Относительно безопасно, если при этом отчётливо понимать, что происходит. Например, в при переносе кода в ASP можно получить пару неприятных моментов. Например, при передаче в функцию значения поля. Т.к. в ASP переменные не типизированы, то сокращённый вызов rs("FieldName") может привести к неверным результатам, т.к. в функцию будет передано не значение поля, а сам объект Field.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 05.03.2005 (Сб) 14:01

Ага, GSerg меня тоже пугал.
Основной аргумент "против" -- нельзя однозначно понять, что хочет разработчик при написании Var = Text1 - присвоить текстовой переменной Var значение Text1.Text (.Text - дефолтовая проперть) или присвоить объектной переменной Var ссылку на объект Text1.
Lasciate ogni speranza, voi ch'entrate.

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 05.03.2005 (Сб) 15:26

К счастью, в VB всё однозначно: если есть Set, значит работа с объектом, если нету - значит с дефолтным свойством.
Изображение

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 05.03.2005 (Сб) 15:35

В том, что тебе пришло, Эпплман высказывается и по этому поводу тоже :)
И я его мысль полностью разделяю :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 05.03.2005 (Сб) 16:59

tyomitch писал(а):К счастью, в VB всё однозначно: если есть Set, значит работа с объектом, если нету - значит с дефолтным свойством.

Ага, если свойство объекта, которому присваивают не реализовано с хитрым Let. Например, так:
Код: Выделить всё
Option Explicit

Private mvVar As Variant

Public Property Let Var(ByRef NewValue As Variant)
    If (VarType(NewValue) = vbObject) Then
        Set mvVar = NewValue
    Else
        mvVar = NewValue
    End If
End Property

Ramzes
Скромный человек
Скромный человек
Аватара пользователя
 
Сообщения: 5004
Зарегистрирован: 12.04.2003 (Сб) 11:59
Откуда: Из гробницы :)

Сообщение Ramzes » 05.03.2005 (Сб) 18:07

tyomitch писал(а):Так и не понял - что плохого в том, что эффективное использование возможностей конкретного языка войдёт в привычку?

В каждом языке есть пачка таких "неповторимых особенностей", и что, от всех них нужно отказаться?

Точно так же можно аргументировать, скажем, что использование оператора "++" в C - плохой подход, подому что в других языках этого оператора нет. И однако никто не отказывается от ++ из-за этого.

Я отказываюсь :D Привык потому что к бейсику вот и не пишу так

tyomitch
Пользователь #1352
Пользователь #1352
Аватара пользователя
 
Сообщения: 12822
Зарегистрирован: 20.10.2002 (Вс) 17:02
Откуда: חיפה

Сообщение tyomitch » 05.03.2005 (Сб) 21:52

skiperski писал(а):
tyomitch писал(а):К счастью, в VB всё однозначно: если есть Set, значит работа с объектом, если нету - значит с дефолтным свойством.

Ага, если свойство объекта, которому присваивают не реализовано с хитрым Let.

Как-то читал на RSDN флейм на тему "перегрузка операторов в C++ - хорошо или плохо". Один из аргументов был - "если кто-то перегружает оператор ++ функцией форматирования диска, то это программист ***ак, а язык не при чём."

Другими словами, любую возможность языка можно употребить не по назначению. Язык не виноват в кривых руках программиста.
Изображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, Yandex-бот и гости: 12

    TopList