Tinutron Posted August 28, 2013 Posted August 28, 2013 Hey guys! I just started to work on a script to convert/encrypt strings in a simple GUI. First of all, here is my code: expandcollapse popup#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <String.au3> $Form1 = GUICreate("Form1", 615, 438, 574, 290) $Text = GUICtrlCreateEdit("", 8, 40, 601, 353) GUICtrlSetData(-1, "") $Convert = GUICtrlCreateButton("Convert", 8, 400, 297, 33) $Close = GUICtrlCreateButton("Close", 312, 400, 297, 33) $StringReverse = GUICtrlCreateRadio("String Reverse", 16, 8, 89, 17) $StringEncrypt = GUICtrlCreateRadio("String Encrypt", 128, 8, 89, 17) $Frame1 = GUICtrlCreateGroup("", 8, 0, 105, 33) GUICtrlCreateGroup("", -99, -99, 1, 1) $Password = GUICtrlCreateInput("", 216, 8, 385, 21) $Frame2 = GUICtrlCreateGroup("", 120, 0, 489, 33) GUICtrlCreateGroup("", -99, -99, 1, 1) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Close Exit Case $Convert If GUICtrlRead($StringReverse) = 1 Then $ReadText = GUICtrlRead($Text) $ReverseText = _StringReverse($ReadText) GUICtrlSetData($Text, $ReverseText) ElseIf GUICtrlRead($StringEncrypt) = 1 Then $ReadText = GUICtrlRead($Text) $ReadPassword = GUICtrlRead($Password) If $ReadPassword = Not 0 Then $TextEncrypt = _StringEncrypt(1, $ReadText, $ReadPassword) GUICtrlSetData($Text, $TextEncrypt) Else MsgBox(0,"Error","String encryption requires a password") EndIf Else MsgBox(0,"Error","No manipulation method specified") EndIf EndSwitch WEnd The problem with this is, if i want to convert for example somthing like this: "String1" "String2" "String3" GUICtrlRead will read it as "String1""String2""String3". I tried to mess around with StringSplit, but can't get it to work. Any indeas?
FireFox Posted August 28, 2013 Posted August 28, 2013 Hi,How do you want the output to be?Input:String1String2String3Output:String3String2String1??Br, FireFox.
Tinutron Posted August 28, 2013 Author Posted August 28, 2013 I want the output to look like this: "1gnirtS" "2gnirtS" "3gnirtS" Basicly i just dont want the script to put everything in the same line, which would look like this: "3gnirtS""2gnirtS""1gnirtS" Thank you!
Solution FireFox Posted August 28, 2013 Solution Posted August 28, 2013 Or...expandcollapse popup#include <ButtonConstants.au3> #include <EditConstants.au3> #include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <String.au3> $Form1 = GUICreate("Form1", 615, 438, 574, 290) $Text = GUICtrlCreateEdit("", 8, 40, 601, 353) $Convert = GUICtrlCreateButton("Convert", 8, 400, 297, 33) $Close = GUICtrlCreateButton("Close", 312, 400, 297, 33) $StringReverse = GUICtrlCreateRadio("String Reverse", 16, 8, 89, 17) $StringEncrypt = GUICtrlCreateRadio("String Encrypt", 128, 8, 89, 17) $Frame1 = GUICtrlCreateGroup("", 8, 0, 105, 33) GUICtrlCreateGroup("", -99, -99, 1, 1) $Password = GUICtrlCreateInput("", 216, 8, 385, 21) $Frame2 = GUICtrlCreateGroup("", 120, 0, 489, 33) GUICtrlCreateGroup("", -99, -99, 1, 1) GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $GUI_EVENT_CLOSE Exit Case $Close Exit Case $Convert If GUICtrlRead($StringReverse) = 1 Then $ReadText = GUICtrlRead($Text) GUICtrlSetData($Text, "") $aText = StringSplit($ReadText, @CRLF, 1) $sText = "" For $i = 1 To $aText[0] $sText &= _StringReverse($aText[$i]) & @CRLF Next GUICtrlSetData($Text, StringTrimRight($sText, 2)) ElseIf GUICtrlRead($StringEncrypt) = 1 Then $ReadText = GUICtrlRead($Text) $ReadPassword = GUICtrlRead($Password) If $ReadPassword = Not 0 Then $TextEncrypt = _StringEncrypt(1, $ReadText, $ReadPassword) GUICtrlSetData($Text, $TextEncrypt) Else MsgBox(0, "Error", "String encryption requires a password") EndIf Else MsgBox(0, "Error", "No manipulation method specified") EndIf EndSwitch WEnd Br, FireFox. Tinutron 1
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now