1

Тема: Не работает ахк со временем

Здравствуйте. Сделал вот такой вот скрипт (внизу), но переменную A_Hour1 выдаёт пустой. Что делать?

!1::
if (A_Hour > 11 or A_Hour < 18)
{
    A_Hour1 := Доброго дня
}
else if (A_Hour > 17 or A_Hour < 24)
{
    A_Hour1 := Доброго вечера
}
else if (A_Hour > -1 or A_Hour < 6)
{
    A_Hour1 := Доброй ночи
}
else if (A_Hour > 5 or A_Hour < 12)
{
    A_Hour1 := Доброго утра
}
MsgBox, % A_Hour1
return

2

Re: Не работает ахк со временем

Morux2112 Добавьте текст в кавычки.


A_Hour1 := "Доброго дня"
GD

3

Re: Не работает ахк со временем

Morux2112, заголовок темы должен содержать  префикс скриптового языка. Исправьте!
Предложения должны начинаться с заглавной буквы и заканчиваться знаками препинания.
http://forum.script-coding.com/viewtopi … 51#p143751

http://forum.script-coding.com/viewtopi … 02#p143902
Исправьте!

4

Re: Не работает ахк со временем

Botsy

Не легче ли удалить знак ':', чем добавлять кавычки?

Win10x64, AHK v1.1.37.01 (Unicode 64-bit) | AHK-Wiki | Переменные и выражения | RegEx101

5

Re: Не работает ахк со временем

__Михаил__ А я думал, что это старый способ разделения переменной на тип "= строка", " := инт, дабл и т.д.", а новый - это все через ":=", только если строка, то в кавычках.

GD

6

Re: Не работает ахк со временем

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

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

7

Re: Не работает ахк со временем

!1::

if A_Hour in 22,23,00,01,02,03
	A_Hour1 := "Доброй ночи"
else
	if A_Hour in 04,05,06,07,08,09
		A_Hour1 := "Доброго утра"
	else
		if A_Hour in 10,11,12,13,14,15
			A_Hour1 := "Доброго дня"
		else
			A_Hour1 := "Доброго вечера"

MsgBox, % A_Hour1
return

8

Re: Не работает ахк со временем

Morux2112 пишет:

if (A_Hour > 11 or A_Hour < 18)

Вместо or надо and.