0
我正在研究Java中的程序,並且在W8中的標題欄遇到問題。出於某種原因,協調人(0,0)已經啓動並隱藏在標題欄中。如果我想在(0,0)處繪製某些東西,我必須將Graphics對象轉換爲(0,10)以使其顯現。Java和Windows 8工具欄
我目前有:
g.setColor(Color.BLACK);
g.fillRect(0, 0, Config.WIDTH + 10, Config.HEIGHT + 10);
g.translate(0, 10);
g.setColor(Color.WHITE);
g.setFont(fonts.getFont(0));
g.drawString("FPS: " + scr.fps, 0, 0);
這工作,但我想刪除g.translate(0, 10);
櫃面此行結束了以後造成的問題。
我畫到這是畫到一個JFrame一個JPanel,因此爲什麼(0,10)是左上角和不(8.38)。發現我出於某種原因正在使用的字體想要開始繪製它應該在-10像素以上的位置。感謝您的回覆! – Sakki
這是因爲字體想要在上行線('FontMetrics#getAscent')開始渲染。看看[使用文本API,測量文本](http://docs.oracle.com/javase/tutorial/2d/text/measuringtext.html)和['FontMetrics'](http://docs.oracle.com) .com/javase/7/docs/api/java/awt/FontMetrics.html)以獲取更多詳細信息 – MadProgrammer