Что нового

Преобразование данных в текст

Z

Zigmund

Гость
Назрел вопрос. Использовал поиск, но правда не нашёл ничего похожего... :'(

Суть вопроса такая:

Имеются поля, при заполнении которых, значение этих полей будет подставленно в текст (на место переменной).

Сразу извиняюсь, за корявое описание. В AutoIt`е пока чайник :IL_AutoIt_1:


Надеюсь на вашу помощь.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Ну как.
Допустим считываешь ты поле:
Код:
$Input = GUICtrlCreateInput("Text",10,10,50,20)
$Read = GuiCtrlRead($input)


А результат у тебя будет примерно таким
Код:
$Result = "Что то ДО" & $Read & "Что то после"
 
Автор
Z

Zigmund

Гость
Medic84 сказал(а):
Ну как.
Допустим считываешь ты поле:
Код:
$Input = GUICtrlCreateInput("Text",10,10,50,20)
$Read = GuiCtrlRead($input)


А результат у тебя будет примерно таким
Код:
$Result = "Что то ДО" & $Read & "Что то после"

Спасибо! Извиняюсь, за ещё один "нубский" вопрос: Как создать функцию для поля отображения результата.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Ну раз ты собрался обрабатывать Поля значит у тебя имеется GUI окно. Так ведь?

Для проверки получаемого текста можно использовать обычный MsgBox или ConsoleWrite
 

`p r o x y

«Улыбайтесь, господа!»
Команда форума
Глобальный модератор
Сообщения
596
Репутация
157
Zigmund
1. Для разных вопросов - необходимо создовать разные темы. Правила форума, пункт: B.4.

2. В каком виде необходимо вывести результат?
например так:
Код:
Opt('GUIOnEventMode',       1)
Opt('MustDeclareVars',      1) 
Opt('TrayIconDebug',        1) 
Opt('TrayIconHide',         0)
 
#include <GUIConstantsEx.au3>  
HotKeySet('{ESC}', '_Pro_Exit')


Global 	$hInput, $hLabel, $hEdit

; Создание окна GUI
GUICreate('Пример: Вывод данных', 320, 300)
;	Установка для крестика окна - выполнение функции: _Pro_Exit
	GUISetOnEvent($GUI_EVENT_CLOSE,     '_Pro_Exit')

; Создание рамки
GUICtrlCreateGroup('  Подставляемый текст:  ', 10, 10, 300, 55)
; Создание поля ввода
$hInput =  GUICtrlCreateInput('', 20, 30, 300-20, 20)


; Создание рамки
GUICtrlCreateGroup('  Выводу через Label:  ', 10, 10+55+5, 300, 50)
; Создание элемента управления Label
$hLabel = GUICtrlCreateLabel('...', 20,  10+55+25, 280, 20)

; Создание рамки
GUICtrlCreateGroup('  Выводу через Edit:  ', 10, 10+105+10, 300, 90)
; Создание элемента управления Edit
$hEdit = GUICtrlCreateEdit('...', 20,  10+105+35, 280, 50)

; Создание рамки
GUICtrlCreateGroup('  Выводу через MsgBox:  ', 10, 10+195+15, 300, 60)
; Создание кнопки
GUICtrlCreateButton('Показать результат', 20, 10+195+35, 150, 30)
; Кнопка будет выполнять функцию _MsgBox
	GUICtrlSetOnEvent(-1, '_MsgBox')

; Создание кнопки
GUICtrlCreateButton('Обновить Label и Edit', 151, 54, 150, 20)
; А это кнопка будет выполнять функцию _Update
	GUICtrlSetOnEvent(-1, '_Update')

GUISetState()

; Бесконечный цикл, используется для режима GUI OnEvent
While 1 
    Sleep(10)
WEnd 
; Функция выхода из скрипта
Func _Pro_Exit() 
    Exit 
EndFunc

; Функция обновления Label и Edit
Func _Update()
;	Установка данных в элемент управления Label. GUICtrlRead($hInput) - чтение данных из поля ввода
	GUICtrlSetData($hLabel, 'Начало строки + ' & GUICtrlRead($hInput) & ' + конец строки')
;	Установка данных в элемент управления Edit. GUICtrlRead($hInput) - чтение данных из поля ввода
	GUICtrlSetData($hEdit, 'Начало строки + ' & GUICtrlRead($hInput) & ' + конец строки')
EndFunc

; Функции отображения MsgBox
Func _MsgBox()
	MsgBox(64, 'Результат', 'Начало строки + ' & GUICtrlRead($hInput) & ' + конец строки')
EndFunc
 
Автор
Z

Zigmund

Гость
`p r o x y сказал(а):
Zigmund
1. Для разных вопросов - необходимо создовать разные темы.

2. В каком виде необходимо вывести результат?

1. Извиняюсь, на будущее, буду знать.

2. Именно так, как ты описал ниже.
 
Верх