我有一个面板控件,标签和文本框彼此相邻。在某些翻译中,标签变得太长,我试图使用GetChildAtPoint
来确定标签何时变得太长并适当缩短(我知道其他/更好的方式,但我和#39;我的方法有点受限,因此这个选项)。
我检查了索引,标签是41,而文本框是0
我使用panelControl.GetChildAtPoint(new Point(labelControl.Location.X + labelControl.Width, labelControl.Location.Y))
来尝试确定标签是否太长,但由于某种原因,上面的代码返回标签控件而不是文本框。
在调试中,labelControl.Location
= 566,305和textBoxControl.Location
= 716,290。标签控件的宽度为202.
我已经看到这种方法在其他情况下有效,并且在这里看不到任何差异,所以我真的不确定为什么它在这种情况下不起作用。
答案 0 :(得分:1)
您的代码似乎没有问题,请添加一些测试以查看运行时的实际大小和位置更改
例如:
<h2> View</h2>
<h3 id="showData"> Hello</h3>
<script>
showData = document.getElementByID('showData');
var firebaseDataRef = firebase.database().ref().child('Age');
firebaseDataRef.on('value', function(snapshot){
showData.innerText = snapshot.value;
});
the rest of my code:
<input type=text" id="userName">
<input type="number" id="userAge">
<button id="btUpdateMessage" margin-bottom="20px" onclick="addFB()"> Update</button>
<script>
var lblCurrentMessage = document.getElementById('lblCurrentMessage'),
userName = document.getElementById('userName'),
btUpdateMessage = document.getElementById('btUpdateMessage'),
userAge = document.getElementById('userAge'),
rootRef = new Firebase('https://addview-c21e6.firebaseio.com'),
currentMessageRef = rootRef.child('Name'),
currentNameRef = rootRef.child('Age');
function addFB()
{
currentMessageRef.push(userName.value);
currentNameRef.push(userAge.value);
userName.value = '';
userAge.value = '';
}