Boa noite.
Gostaria saber se tem como fazer o que vou dizer abaixo:
Tenho a função "A" que retorna o valor "10",queria que ela retornasse esse valor direto em um comando (Vou coloca a msgbox como ex.) ao invez de ter que fazer
Var := A()
Msgbox %var%
eu fizesse:
Msgbox <e a funçao aqui>
Eu queria que ficasse tudo em uma linha só.
No script que to fazendo ele chama muito a mesma função antes de vários comandos então queria encurta o script com algo do tipo.
Return de uma função direto em um outro comando Topic is solved
Moderator: Gio
- juanmuscaria
- Posts: 65
- Joined: 29 Oct 2017, 10:53
- Location: Brazil
- Contact:
Re: Return de uma função direto em um outro comando Topic is solved
Bom dia Juanmuscaria.
Você pode forçar a interpretação dos parâmetros de um comando a se darem por meio de uma expressão matemática. Para fazer isso, basta usar o símbolo de percentual e um espaço logo no início do parâmetro em questão. Isso vai permitir o que você quer fazer.
Mas há algumas ressalvas: primeiro, quando você força um parâmetro a ser interpretado dessa forma, todos os parâmetros subsequentes (somente os subsequentes!) também serão interpretados em forma de expressão matemática. Isso quer dizer que se eu forçar o parâmetro3 de um comando a ser interpretado assim, os parâmetros 4, 5, 6 (e quantos mais tiver) serão também interpretados como em forma de expressão matemática. Além disso, alguns comandos simplesmente não aceitam esta funcionalidade (é sempre bom testar para ver se o comando aceitou corretamente quando você escrever uma linha dessas).
Você pode forçar a interpretação dos parâmetros de um comando a se darem por meio de uma expressão matemática. Para fazer isso, basta usar o símbolo de percentual e um espaço logo no início do parâmetro em questão. Isso vai permitir o que você quer fazer.
Code: Select all
msgbox % Criar_Mensagem()
Return
Criar_Mensagem()
{
Return "Olá mundo!"
}
"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: Return de uma função direto em um outro comando
@Gio , obrigado para function
boa tarde , outros exemplos para 'msgbox'
boa tarde , outros exemplos para 'msgbox'
Code: Select all
;- sobre 'msgbox' , ajudo user 'BoBo'
; - https://autohotkey.com/boards/viewtopic.php?f=9&t=43170
;- primeiro exemplo
a:=5
c:=(a*2)
e4x= Preço=%c%
MsgBox, 262208,TEST-1 ,%e4x%
;- segundo exemplo
f2=%a_scriptdir%\msgbox_test2.ahk
ifexist,%f2%
filedelete,%f2%
e5x=
(LTrim Join`r`n `
SetWorkingDir,%a_scriptdir% ;- veja diferença > C:\......
MsgBox, 262208,TEST-2 ,This is a test`nSecond Line`n%e4x%
Return
)
fileappend,%e5x%,%f2%
run,%f2%
;- terceiro exemplo
f3=%a_scriptdir%\msgbox_test3.ahk
ifexist,%f3%
filedelete,%f3%
e6x=
(LTrim Join`r`n % `
SetWorkingDir,%a_scriptdir% ;- veja diferença > %a_scriptdir%
MsgBox, 262208,TEST-3 ,This is a test`nSecond Line`n%e4x%
Return
)
fileappend,%e6x%,%f3%
run,%f3%
exitapp
- juanmuscaria
- Posts: 65
- Joined: 29 Oct 2017, 10:53
- Location: Brazil
- Contact:
Re: Return de uma função direto em um outro comando
Obrigado.Gio wrote:Bom dia Juanmuscaria.
Você pode forçar a interpretação dos parâmetros de um comando a se darem por meio de uma expressão matemática. Para fazer isso, basta usar o símbolo de percentual e um espaço logo no início do parâmetro em questão. Isso vai permitir o que você quer fazer.
Mas há algumas ressalvas: primeiro, quando você força um parâmetro a ser interpretado dessa forma, todos os parâmetros subsequentes (somente os subsequentes!) também serão interpretados em forma de expressão matemática. Isso quer dizer que se eu forçar o parâmetro3 de um comando a ser interpretado assim, os parâmetros 4, 5, 6 (e quantos mais tiver) serão também interpretados como em forma de expressão matemática. Além disso, alguns comandos simplesmente não aceitam esta funcionalidade (é sempre bom testar para ver se o comando aceitou corretamente quando você escrever uma linha dessas).Code: Select all
msgbox % Criar_Mensagem() Return Criar_Mensagem() { Return "Olá mundo!" }
Só fui ver agora que acabo minha semana de prova
Return to “Ajuda e Suporte Geral”
Who is online
Users browsing this forum: No registered users and 3 guests