Andreik Posted May 28, 2008 Posted May 28, 2008 Func ColorTextBox($title,$text,$color) Local $L_TEXT = StringLen($text) Local $ROW = Int(Number($L_TEXT) / 45) + 1 Local $GUI = GUICreate($title,300,15*Number($ROW) + 30,-1,-1) Local $FIELD = GUICtrlCreateLabel($text,5,5,290,150,0x01) Local $OK = GUICtrlCreateButton("OK",130,15*Number($ROW) + 5,40,20) GUICtrlSetColor ($FIELD,$color) GUISetState(@SW_SHOW,$GUI) While 1 Local $MSG = GUIGetMsg() If $MSG = $OK Then GUIDelete($GUI) ExitLoop EndIf WEnd EndFunc $MESSAGE = "AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys)." ColorTextBox("Test colors",$MESSAGE,0xFF00FF) ColorTextBox("Test colors",$MESSAGE,0x0000FF) ColorTextBox("Test colors",$MESSAGE,0x00FF00) ColorTextBox("Test colors",$MESSAGE,0xFF0000) ColorTextBox("Test colors",$MESSAGE,0xC8C8C8) What is wrong with OK button?
zorphnog Posted May 28, 2008 Posted May 28, 2008 Your label and button controls are overlapping. Try: Func ColorTextBox($title,$text,$color) Local $L_TEXT = StringLen($text) Local $ROW = Int(Number($L_TEXT) / 45) + 1 Local $GUI = GUICreate($title,300,15*Number($ROW) + 30,-1,-1) Local $FIELD = GUICtrlCreateLabel($text,5,5,290,15*Number($ROW),0x01) Local $OK = GUICtrlCreateButton("OK",130,15*Number($ROW) + 5,40,20) GUICtrlSetColor ($FIELD,$color) GUISetState(@SW_SHOW,$GUI) While 1 Local $MSG = GUIGetMsg() If $MSG = $OK Then GUIDelete($GUI) ExitLoop EndIf WEnd EndFunc $MESSAGE = "AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys)." ColorTextBox("Test colors",$MESSAGE,0xFF00FF) ColorTextBox("Test colors",$MESSAGE,0x0000FF) ColorTextBox("Test colors",$MESSAGE,0x00FF00) ColorTextBox("Test colors",$MESSAGE,0xFF0000) ColorTextBox("Test colors",$MESSAGE,0xC8C8C8)
Andreik Posted May 28, 2008 Author Posted May 28, 2008 Your label and button controls are overlapping. Try: Func ColorTextBox($title,$text,$color) Local $L_TEXT = StringLen($text) Local $ROW = Int(Number($L_TEXT) / 45) + 1 Local $GUI = GUICreate($title,300,15*Number($ROW) + 30,-1,-1) Local $FIELD = GUICtrlCreateLabel($text,5,5,290,15*Number($ROW),0x01) Local $OK = GUICtrlCreateButton("OK",130,15*Number($ROW) + 5,40,20) GUICtrlSetColor ($FIELD,$color) GUISetState(@SW_SHOW,$GUI) While 1 Local $MSG = GUIGetMsg() If $MSG = $OK Then GUIDelete($GUI) ExitLoop EndIf WEnd EndFunc $MESSAGE = "AutoIt v3 is a freeware BASIC-like scripting language designed for automating the Windows GUI. It uses a combination of simulated keystrokes, mouse movement and window/control manipulation in order to automate tasks in a way not possible or reliable with other languages (e.g. VBScript and SendKeys)." ColorTextBox("Test colors",$MESSAGE,0xFF00FF) ColorTextBox("Test colors",$MESSAGE,0x0000FF) ColorTextBox("Test colors",$MESSAGE,0x00FF00) ColorTextBox("Test colors",$MESSAGE,0xFF0000) ColorTextBox("Test colors",$MESSAGE,0xC8C8C8) Thanks zorphnog!
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