TextInput & MouseArea
-
Not sure if I am just not understanding how to use this correctly, but I am not able to edit text with the keyboard if I have a mouseArea defined for it also.
@
import Qt 4.7Rectangle {
id: mainWindowwidth: 640; height: 480
color: "lightgray"Rectangle {
id: box
anchors.centerIn: parent
width: ti.width; height: 25;
color: "white"TextInput { id: ti; text: "This text can not be edited" MouseArea { id: mouseArea anchors.fill: parent } }
}
}
@Just a basic rectangle with a textInput and a mouseArea. I could not find anything in the documentation where I would need to pass a mouse event along so a key event could evaluate.
-
I think you need to disable the mousearea when you want to enter the text. Not sure what you want to do, but I'm guessing that when a user clicks the TextInput you make some actions based on the onClicked event in MouseArea, then start entering some text. I think you can do this by deleting the mouse area once you clicked on her. :) Not sure if it's the best solution.
-
I have the same problem with this code
@FocusScope {
property alias text: masterInput.text
property string default_text : "Ip Address"width: 180; height:28 signal acceptedLineInput() TextInput { id: masterInput anchors.fill: parent selectByMouse:true color: "#1678b5" selectionColor: "green" text: default_text font.pixelSize: 12 focus: true validator: RegExpValidator {regExp :/([1-9][0-9]{0,2})\.([1-9][0-9]{0,2})\.([1-9][0-9]{0,2})\.([1-9][0-9]{0,2})/} MouseArea { hoverEnabled:true anchors.fill: parent onEntered: { Func.checkFocus(masterInput,default_text) } onExited: { Func.checkFocus(masterInput,default_text) } } onAccepted: { acceptedLineInput() console.log(acceptableInput) } }
}
@and the Js is :
@function checkFocus(text_input1,default_text)
{
if (text_input1.text == default_text)
text_input1.text= "";
else if(text_input1.text === "")
text_input1.text= default_text;
}
@I work not to bad but I can't select text on the textInput. Is there a solution or a better way to do what I want ?
Thanks
-
I wanted to use TextInput and when user click on it, clear the text. I used code described in my following post.
http://kunalmaemo.blogspot.com/2011/06/using-textinput-in-qt-quick-qml.html
-
maybe "this post":http://developer.qt.nokia.com/forums/viewthread/13344/ helps