2015-04-01 55 views
0

嗨,我是一個在編程新手,我有一點麻煩,通過在我的程序中添加一條IF語句。我創建了一個模塊結果計算器,用戶在他們的考試和課程作業中輸入他們的結果分數,如果用戶達到40%,程序以「你做得好!」做出回答!如果他們低於40%,它會回覆說:「對不起,你失敗了!」但是我有計劃來計算分數,但消息不顯示在GUI上。 ![輸入圖片描述] [1] 我已經創建了另一個成功,它顯示在控制檯上而不是GUI的結果。如何使用JOption.pane在我的程序中輸入If語句?

我將不勝感激,如果有人可以幫助我在這種情況下的代碼。

class GUI{ 
public static void main(String[] args) { 

     String result1 = JOptionPane.showInputDialog("Enter Coursework Result:"); 
     String result2 = JOptionPane.showInputDialog("Enter Exam Result:"); 


     int num1 = Integer.parseInt(result1); 
     int num2 = Integer.parseInt(result2); 
     int avg = (num1 + num2)/2; 

     if (avg<40) 
      System.out.println("Your Test Score: "+avg+"% Sorry But You Failed!"); 
     else if(avg<=100) 
      System.out.println("Your Test Score: "+avg+"% Well Done, You Passed!"); 
} 
} 
+0

那麼根本沒有消息?我想這可能意味着'avg'不滿足<40'或'<= 100'的條件。程序是否明確終止?此外,爲了保持一致性,請嘗試讀取並將結果存儲爲「int」。 – 2015-04-01 23:42:12

+0

出現消息,輸入考試,然後進行課程練習,它只是不顯示GUI上的最終結果。 – Mohamed 2015-04-01 23:45:04

+0

如果你在最後輸入一個消息,只是說'System.out.println(「Finished!」)',它到達那裏嗎? – 2015-04-01 23:46:35

回答

1

您需要存儲您的結果消息的字符串:

JOptionPane.showMessageDialog(null, message); 

你現在正在做什麼是:

String message = ""; 
if (avg<40) 
    message = "Your Test Score: "+avg+"% Sorry But You Failed!"; 

else if(avg<=100) 
    message = "Your Test Score: "+avg+"% Well Done, You Passed!"; 

然後你可以使用的JOptionPane使用以下顯示它使用System.out.println()將結果打印到控制檯。這不會將其打印到GUI。方法JOptionPane.showMessageDialog()將顯示一個包含結果消息的對話框。

+0

乾杯伴侶!你是一個LIFESAVER! – Mohamed 2015-04-01 23:56:40

+0

當我按F5時,如何自動使它在GUI上啓動? – Mohamed 2015-04-01 23:57:16

+0

如果您希望應用程序具有實際的窗口而不是彈出窗口,則需要查看JFrame。 – chrissukhram 2015-04-01 23:57:57