我正在尋找一個示例,其中點擊不同的按鈕應該打開不同的標籤,並且結果/輸出應該寫入其中的文本面板。Button Click應該調用一個帶有文本面板的標籤面板(Dynamic)
文本面板應嵌入在選項卡內。
而且我找實例,而不是完整的解決方案
我正在尋找一個示例,其中點擊不同的按鈕應該打開不同的標籤,並且結果/輸出應該寫入其中的文本面板。Button Click應該調用一個帶有文本面板的標籤面板(Dynamic)
文本面板應嵌入在選項卡內。
而且我找實例,而不是完整的解決方案
你應該叫JTabbedPane.setSelectedIndex
您的按鈕監聽器裏,試試下面的例子:
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTabbedPane;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
public class Main
{
private static int numberOfTabs = 1;
public static void main(String[] args)
{
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
try
{
UIManager.setLookAndFeel(
"javax.swing.plaf.nimbus.NimbusLookAndFeel");
}
catch (ClassNotFoundException | InstantiationException
| IllegalAccessException
| UnsupportedLookAndFeelException e)
{
}
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(100, 100, 400, 500);
JButton addNewTab = new JButton("Add new Tab");
JTabbedPane tab = new JTabbedPane();
addNewTab.addActionListener(e -> {
tab.add(new JLabel("new tab " + numberOfTabs + " created."),
"tab " + numberOfTabs);
tab.setSelectedIndex(numberOfTabs - 1);
numberOfTabs++;
});
frame.add(addNewTab, BorderLayout.NORTH);
frame.add(tab, BorderLayout.CENTER);
frame.setVisible(true);
}
});
}
}
我希望在按鈕上添加新選項卡點擊和添加標籤後,它也應該觸發一些方法,如有一些打印語句,應該被重定向到標籤 – user4021949
@ user4021949內看到我更新的代碼。 –
非常感謝,爲我工作。接下來我正在尋找的東西讓我說,我有兩個按鈕在表單面板中,當我點擊時,一些輸出被重定向到標籤,就像我點擊第一個按鈕,然後輸出將轉到第一個標籤,如果我點擊第二個按鈕,然後輸出將轉到第二個選項卡,並且選項卡中都有textarea。例如讚賞 – user4021949
你能否更具體?例如。你想要在按鈕點擊時添加新標籤,還是隻想更改活動標籤?另外,你究竟是什麼意思'結果/輸出'? –
@LuxxMiner我希望在按鈕單擊時添加新選項卡,並且一旦添加了選項卡,它也應該觸發某種方法,如具有一些打印語句並且應該被重定向到選項卡內 – user4021949