2013-02-14 33 views
1

我有一個GWT文本框的高度由變量決定:gwt - 如何刪除TextBox內部空白/填充?

aTextBox = new TextBox(); 
parentLayoutPanel.add(aTextBox); 
parentLayoutPanel.setWidgetTopHeight(aTextBox, 0.0, Unit.PX, text_box_height, Unit.PX); 

這個變量text_box_height是未知的,直到頁面加載。現在我想確保框內的字體與框的大小相匹配。目前,我嘗試以下操作:

aTextBox.getElement().getStyle().setProperty("fontSize", Integer.toString(text_box_height) + "px"); 

不幸的是,這會導致空格它可以切斷文字底部的上面的文字:

textBoxFont

我怎樣才能刪除此空白/填充?還是有不同的方式來確定文本的大小和位置?非常感謝!

編輯:其他信息: 由於意見,我添加了以下圖像。該行是光標標記。 enter image description here

+0

使用不同的字母 - 如F - ,你會看到一個非常不同的空白。 – 2013-02-14 18:01:08

+0

@AndreiVolgin我仍然用'F'獲得相同的空白區域。 – golmschenk 2013-02-14 18:04:11

+0

你嘗試過vertical-align:middle; ?? – 2013-02-14 18:58:24

回答

0

經過一番更多的研究,我發現文本行佔用的空間是字體大小的1.5倍。我沒有看到改變空白的方法。實際上,我最終設置的盒子是字體大小的1.5倍。

0

您可以在TextBox上設置填充,就像您可以在任何元素上設置填充一樣。您可以使用.getElement().getStyle(),或者您可以應用CSS樣式。

+0

使用'aTextBox.getElement()。getStyle()。setProperty(「padding」,「0px」);'不會改變它。另外,我嘗試添加一個CSS樣式,它將填充,邊距和邊框設置爲零,但這似乎沒有任何效果。任何其他想法? – golmschenk 2013-02-14 18:07:06

+0

我添加了另一個圖像,顯示具有正確樣式的輸入,但仍然無法正確顯示。任何其他想法? – golmschenk 2013-02-14 19:31:46

+0

您必須使用「0px!important」來覆蓋默認的GWT風格。 – 2013-02-15 03:28:14