簡體   English   中英

Java(JFace應用程序窗口)設置外部標簽文本

[英]Java (JFace Application Window) Setting external label text

我想找出如何在外部應用程序窗口上設置標簽的文本。

我有的:

到目前為止我有兩個窗戶 第一個是用戶啟動程序時將出現的主應用程序窗口。 第二個窗口是我專門創建的另一個單獨的窗口,用於顯示自定義錯誤窗口。

問題:我似乎無法調用我在錯誤窗口上創建的標簽並將文本設置為自定義。 為什么? 我希望能夠多次重復使用此窗口! 此窗口的目的是在輸入無效或應用程序無法讀取/保存到文件時進行錯誤處理。

我打算發布屏幕截圖,但你需要10個代表。 它會更好地解釋一切。

以下是Error_dialog窗口上標簽的代碼:

Label Error_label = new Label(container, SWT.NONE);
Error_label.setBounds(10, 10, 348, 13);
Error_label.setText("Label I actively want to change!");

這是我想要滿足的條件:

if(AvailableSpaces == 10){
//Set the label text HERE and then open the window!
    showError.open();
}

我也把它包含在課程的頂部:

Error_dialog showError = new Error_dialog();

只需將標簽保存為對話框類中的字段,然后添加“setter”方法即可。 就像是:

public class ErrorDialog extends Dialog
{
  private Label errorLabel;

  ... other code

  public void setText(String text)
  {
    if (errorLabel != null && !errorLabel.isDisposed()) {
      errorLabel.setText(text);
    }
  }

你需要像這樣使用你的對話框:

 ErrorDialog dialog = new ErrorDialog(shell);

 dialog.create();  // Creates the controls

 dialog.setText("Error message");

 dialog.open();

注意:您應該遵守Java變量名稱的規則 - 它們始終以小寫字母開頭。

進一步學習使用布局 如果用戶使用不同的字體,使用setBounds將導致問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM