Что нового

[Элементы GUI] Не работает GUI интерфейс

DeyDi

Новичок
Сообщения
3
Репутация
0
Уважаемые сторожилы и просто умные и знающие люди, нужна Ваша помощь!

Сколько же раз Вы это слышали: "Нужно, помогите и т.д...." )))

Постараюсь коротко но не уверен, что получится, т.к. профессионально сорее всего Вам не объясюу.

Есть торговый термина TRANSAQ и надоело каждый раз вводить логин и пароль. Цель автоматизировать данный процесс... Ниже окно входа в программу:
Рисунок 1

Запуск программы решил:
; Запуск TRANSAQ
; Run ("C:\Transaq\transaq.exe") - через эту команду не работает
ShellExecute ("C:\Transaq\transaq.exe" , "ЛОГИН ПАРОЛЬ", "C:\Transaq")

В процессе решил немного свой скрипт облагородить и немного помочь так же Коллегам в этом... Через ISN AutoIt Studio создал графический интерфейс:
Рисунок 2

В итоге получился такой код:
;*****************************************
;TRANSAQ_AutoLogin.au3
;*****************************************

;MsgBox(266288,"Вход в TRANSAQ","Ввведите логин и пароль для TRANSAQ",50)
;WinWaitActive ("Вход в TRANSAQ")
;Sleep(3000)
;WinClose ("Вход в TRANSAQ")
;MouseClick ("primary", 308, 13, 1, 0)

; Окно ввода логина и пароля;
#include-once

#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#Include <GuiButton.au3>
#include <EditConstants.au3>

$Form = GUICreate("Logo&Pass",540,340,-1,-1,$WS_POPUPWINDOW,BitOr($WS_EX_DLGMODALFRAME,$WS_EX_OVERLAPPEDWINDOW))
$Form_BGimage = GUICtrlCreatePic(@scriptdir&"\"&"Images\me2125201-stock-market-hd-a0240.jpg",0,0,540,340,$WS_CLIPSIBLINGS)
GUICtrlSetState(-1,$GUI_DISABLE)
GUICtrlSetResizing(-1,102)
GUICtrlCreateButton("Поехали!",210,295,130,30,$BS_MULTILINE,-1)
GUICtrlSetFont(-1,8,700,0,"Micra")
GUICtrlCreateInput("логин",60,140,150,20,-1,$WS_EX_CLIENTEDGE)
GUICtrlSetFont(-1,12,700,0,"Micra")
GUICtrlCreateInput("пароль",340,140,150,20,-1,$WS_EX_CLIENTEDGE)
GUICtrlSetFont(-1,12,700,0,"Micra")
GUICtrlCreateLabel("Вход в TRANSAQ",10,60,521,41,BitOr($SS_CENTER,$SS_NOTIFY),-1)
GUICtrlSetFont(-1,24,700,0,"Micra")
GUICtrlSetColor(-1,"0x4D6486")
GUICtrlSetBkColor(-1,"-2")
GUICtrlCreateCheckbox("Сохранить",20,305,111,20,-1,-1)
GUICtrlSetFont(-1,8,700,0,"Micra")
GUICtrlSetBkColor(-1,"-2")


; Запуск TRANSAQ
; Run ("C:\Transaq\transaq.exe")
ShellExecute ("C:\Transaq\transaq.exe" , "ЛОГИН ПАРОЛЬ", "C:\Transaq")

; Finished!

При запуске проекта, графический интерфейс не выводится, а сразу исполняется запуск программы... :'(
Помогите решить данную проблему и как можно еще потом решить вопрос по привязке Логина и Пароля из окна ввода в при входе программу и возможности сохранения/не сохранения пароля?
 

Вложения

  • 1.jpg
    1.jpg
    66.3 КБ · Просмотры: 8
  • 2.jpg
    2.jpg
    95 КБ · Просмотры: 6

Tempo

AutoIT Гуру
Сообщения
616
Репутация
205
Код:
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>

Global $iBtnGo, $iEdtLogin, $iEdtPass, $iChckSave, $sLogin, $sPass
$sLogin = IniRead("TRANSAQ.ini", "Account", "Login", "")
$sPass = IniRead("TRANSAQ.ini", "Account", "Password", "")
GUICreate("Logo&Pass", 540, 340, -1, -1, $WS_POPUPWINDOW, BitOR($WS_EX_DLGMODALFRAME, $WS_EX_OVERLAPPEDWINDOW))
GUICtrlCreatePic(@ScriptDir & "\" & "Images\me2125201-stock-market-hd-a0240.jpg", 0, 0, 540, 340, $WS_CLIPSIBLINGS)
GUICtrlSetState(-1, $GUI_DISABLE)
GUICtrlSetResizing(-1, 102)
$iBtnGo = GUICtrlCreateButton("Поехали!", 210, 295, 130, 30, $BS_MULTILINE, -1)
GUICtrlSetFont(-1, 8, 700, 0, "Micra")
$iEdtLogin = GUICtrlCreateInput($sLogin, 60, 140, 150, 20, -1, $WS_EX_CLIENTEDGE)
GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, "Логин")
GUICtrlSetFont(-1, 12, 700, 0, "Micra")
$iEdtPass = GUICtrlCreateInput($sPass, 340, 140, 150, 20, -1, $WS_EX_CLIENTEDGE)
GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, "Пароль")
GUICtrlSetFont(-1, 12, 700, 0, "Micra")
GUICtrlCreateLabel("Вход в TRANSAQ", 10, 60, 521, 41, BitOR($SS_CENTER, $SS_NOTIFY), -1)
GUICtrlSetFont(-1, 24, 700, 0, "Micra")
GUICtrlSetColor(-1, 0x4D6486)
GUICtrlSetBkColor(-1, -2)
$iChckSave = GUICtrlCreateCheckbox("Сохранить", 20, 305, 111, 20, -1, -1)
GUICtrlSetFont(-1, 8, 700, 0, "Micra")
GUICtrlSetBkColor(-1, -2)
GUISetState()

While 1
	Switch GUIGetMsg()
		Case $iBtnGo
			$sLogin = GUICtrlRead($iEdtLogin)
			$sPass = GUICtrlRead($iEdtPass)
			If BitAND(GUICtrlRead($iChckSave), $GUI_CHECKED) Then
				IniWrite("TRANSAQ.ini", "Account", "Login", $sLogin)
				IniWrite("TRANSAQ.ini", "Account", "Password", $sPass)
			EndIf
			ShellExecute("C:\Transaq\transaq.exe", $sLogin & " " & $sPass, "C:\Transaq")
		Case $GUI_EVENT_CLOSE
			Exit
	EndSwitch
WEnd
 
Автор
D

DeyDi

Новичок
Сообщения
3
Репутация
0
Tempo сказал(а):
Код:
#include <StaticConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>

Global $iBtnGo, $iEdtLogin, $iEdtPass, $iChckSave, $sLogin, $sPass
$sLogin = IniRead("TRANSAQ.ini", "Account", "Login", "")
$sPass = IniRead("TRANSAQ.ini", "Account", "Password", "")
GUICreate("Logo&Pass", 540, 340, -1, -1, $WS_POPUPWINDOW, BitOR($WS_EX_DLGMODALFRAME, $WS_EX_OVERLAPPEDWINDOW))
GUICtrlCreatePic(@ScriptDir & "\" & "Images\me2125201-stock-market-hd-a0240.jpg", 0, 0, 540, 340, $WS_CLIPSIBLINGS)
GUICtrlSetState(-1, $GUI_DISABLE)
GUICtrlSetResizing(-1, 102)
$iBtnGo = GUICtrlCreateButton("Поехали!", 210, 295, 130, 30, $BS_MULTILINE, -1)
GUICtrlSetFont(-1, 8, 700, 0, "Micra")
$iEdtLogin = GUICtrlCreateInput($sLogin, 60, 140, 150, 20, -1, $WS_EX_CLIENTEDGE)
GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, "Логин")
GUICtrlSetFont(-1, 12, 700, 0, "Micra")
$iEdtPass = GUICtrlCreateInput($sLogin, 340, 140, 150, 20, -1, $WS_EX_CLIENTEDGE)
GUICtrlSendMsg(-1, $EM_SETCUEBANNER, True, "Пароль")
GUICtrlSetFont(-1, 12, 700, 0, "Micra")
GUICtrlCreateLabel("Вход в TRANSAQ", 10, 60, 521, 41, BitOR($SS_CENTER, $SS_NOTIFY), -1)
GUICtrlSetFont(-1, 24, 700, 0, "Micra")
GUICtrlSetColor(-1, 0x4D6486)
GUICtrlSetBkColor(-1, -2)
$iChckSave = GUICtrlCreateCheckbox("Сохранить", 20, 305, 111, 20, -1, -1)
GUICtrlSetFont(-1, 8, 700, 0, "Micra")
GUICtrlSetBkColor(-1, -2)
GUISetState()

While 1
	Switch GUIGetMsg()
		Case $iBtnGo
			$sLogin = GUICtrlRead($iEdtLogin)
			$sPass = GUICtrlRead($iEdtPass)
			If BitAND(GUICtrlRead($iChckSave), $GUI_CHECKED) Then
				IniWrite("TRANSAQ.ini", "Account", "Login", $sLogin)
				IniWrite("TRANSAQ.ini", "Account", "Password", $sPass)
			EndIf
			ShellExecute("C:\Transaq\transaq.exe", $sLogin & " " & $sPass, "C:\Transaq")
		Case $GUI_EVENT_CLOSE
			Exit
	EndSwitch
WEnd

Tempo
Спасибо Вам за ответ. при исполнении скрипта в строке:
GUICtrlCreateLabel("Вход в TRANSAQ", 10, 60, 521, 41, BitOR($SS_CENTER, $SS_NOTIFY), -1) Ошибка

Запуск файла TRANSAQ_AutoLogin.au3...

"C:\Users\*****\Documents\ISN AutoIt Studio\Projects\TRANSAQ_AutoLogin\TRANSAQ_AutoLogin.au3" (26) : ==> Variable used without being declared.:
GUICtrlCreateLabel("???? ? TRANSAQ", 10, 60, 521, 41, BitOR($SS_CENTER, $SS_NOTIFY), -1)
GUICtrlCreateLabel("???? ? TRANSAQ", 10, 60, 521, 41, BitOR(^ ERROR

В чем может быть ошибка? Подскажите пожалуйста
 

Вложения

  • 22.jpg
    22.jpg
    123.8 КБ · Просмотры: 8

joiner

Модератор
Локальный модератор
Сообщения
3,556
Репутация
628
DeyDi
ругается на то, что переменная используется без объявления
хотя, это константа.
Используй стандартный SciTE и не будет таких досадных недоразумений
 
Автор
D

DeyDi

Новичок
Сообщения
3
Репутация
0
joiner и Tempo
Спасибо большое Вас знающие люди вы мне очень помогли. Все заработало
Дай Бог Вам здоровья и счастья :IL_AutoIt_1:
 
Верх