Gostaria de um script que insira automaticamente a "/" na data.
Exemplo: ao digitar 14092019 apareça 14/09/2019.
Só uso datas entre 19xx e 20xx.
Desde já, obrigado!!!
Como colocar barras ("/") automaticamente na data?
Moderator: Gio
Re: Como colocar barras ("/") automaticamente na data?
short example
Code: Select all
Gui, Add, Edit, vA w300 ,%A_now% ;- or type 20190915
Gui, Add, Edit, vEdit2 w300 readonly
Gui, add, button, gA1,START
Gui, Show
Return
Guiclose:
exitapp
A1:
GuiControlGet,A
stringmid,d,a,7,2
stringmid,m,a,5,2
stringmid,y,a,1,4
c=%d%/%m%/%y%
GuiControl, Text, Edit2, %c%
Return
Code: Select all
x=16092019
Gui, Add, Edit, vA w300 ,%x% ;- as example day/month/year
Gui, Add, Edit, vEdit2 w300 readonly
Gui, add, button, gA1,START
Gui, Show
Return
Guiclose:
exitapp
A1:
GuiControlGet,A
;stringmid,d,a,7,2
;stringmid,m,a,5,2
;stringmid,y,a,1,4
stringmid,d,a,1,2
stringmid,m,a,3,2
stringmid,y,a,5,4
c=%d%/%m%/%y%
GuiControl, Text, Edit2, %c% ;- 16/09/2019
Return
Last edited by garry on 17 Sep 2019, 06:55, edited 1 time in total.
Re: Como colocar barras ("/") automaticamente na data?
Bom dia Rubbioli.
Seja bem-vindo ao fórum da comunidade do AutoHotkey.
Se entendi o que você deseja, creio que o script abaixo fará o que quer.
Basicamente, sempre que você escrever uma sequência de 8 números, o script vai verificar se é uma data válida entre 01/01/1900 e 31/12/2019. Se for, ele vai adicionar as barras. Se não for, ele não vai fazer nada. Além disso, se você precisar escrever uma sequência que se encaixa na descrição, mas não quiser colocar as barras automaticamente, basta apertar um backspace antes do final da sequência e depois reescrever o último número. Por fim, se você escrever alguma letra no meio da sequência, o script descartará a sequência de números armazenada.
Espero ter ajudado, se precisar de mais alguma coisa ou tiver alguma dúvida, só postar abaixo
Seja bem-vindo ao fórum da comunidade do AutoHotkey.
Se entendi o que você deseja, creio que o script abaixo fará o que quer.
Code: Select all
SetBatchLines, -1
SendMode, Input
$0::
$1::
$2::
$3::
$4::
$5::
$6::
$7::
$8::
$9::
BlockInput, On
NUMBERS := NUMBERS . SubStr(A_ThisHotkey, 2, 1)
CURRENT_NUMBER := SubStr(A_ThisHotkey, 2, 1)
If ((SubStr(NUMBERS, -3, 4) >= 1900) AND (SubStr(NUMBERS, -3, 4) <= 2099) AND (StrLen(NUMBERS) >= 8) AND (SubStr(NUMBERS, -7, 2) <= 31) AND (SubStr(NUMBERS, -5, 2) <= 12))
{
Send {BackSpace}{BackSpace}{BackSpace}{BackSpace}{BackSpace}{BackSpace}{BackSpace}
DATE_TO_WRITE := SubStr(NUMBERS, -7, 2) . "/" . SubStr(NUMBERS, -5, 2) . "/" . SubStr(NUMBERS, -3, 4)
Send %DATE_TO_WRITE%
NUMBERS := ""
}
else
{
Send %CURRENT_NUMBER%
}
BlockInput, Off
Return
~a::
~b::
~c::
~d::
~e::
~f::
~g::
~h::
~i::
~j::
~k::
~l::
~m::
~n::
~o::
~p::
~q::
~r::
~s::
~t::
~u::
~v::
~x::
~y::
~z::
~BackSpace::
NUMBERS := ""
Return
Espero ter ajudado, se precisar de mais alguma coisa ou tiver alguma dúvida, só postar abaixo
"What is suitable automation? Whatever saves your day for the greater matters."
Barcoder - Create QR Codes and other Barcodes using only Autohotkey !!
Archmage Gray - A fantasy shooter game fully coded in AutoHotkey
Barcoder - Create QR Codes and other Barcodes using only Autohotkey !!
Archmage Gray - A fantasy shooter game fully coded in AutoHotkey
Re: Como colocar barras ("/") automaticamente na data?
ola!!!
Obrigado por seu tempo, mas não funcionou!
após digitar por exemplo 16092019 nada de aparecerem as barras!
Desde já, obrigado.
Obrigado por seu tempo, mas não funcionou!
após digitar por exemplo 16092019 nada de aparecerem as barras!
Desde já, obrigado.
garry wrote: ↑15 Sep 2019, 14:45short exampleCode: Select all
Gui, Add, Edit, vA w300 ,%A_now% ;- or type 20190915 Gui, Add, Edit, vEdit2 w300 readonly Gui, add, button, gA1,START Gui, Show Return Guiclose: exitapp A1: GuiControlGet,A stringmid,d,a,7,2 stringmid,m,a,5,2 stringmid,y,a,1,4 c=%d%/%m%/%y% GuiControl, Text, Edit2, %c% Return
Return to “Ajuda e Suporte Geral”
Who is online
Users browsing this forum: No registered users and 28 guests