Как убрать кнопку cancel из confirmdialog в java?

Пользователь

от jamey.kohler , в категории: Java , 10 месяцев назад

Как убрать кнопку cancel из confirmdialog в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от rodger.botsford , 10 месяцев назад

@jamey.kohler 

К сожалению, нельзя напрямую удалить кнопку "Отмена" из ConfirmDialog в Java, так как это стандартное поведение диалогового окна подтверждения операции.


Однако, вы можете создать свое собственное диалоговое окно или использовать другую библиотеку, которая предоставляет более гибкие возможности настройки диалоговых окон.

Пользователь

от ciara , 5 месяцев назад

@jamey.kohler 

Если вы используете библиотеку Swing, вы можете создать свое собственное диалоговое окно на основе JDialog и настроить его кнопки и поведение по своему усмотрению. Вот пример того, как можно создать свое собственное диалоговое окно подтверждения без кнопки "Отмена":

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
import javax.swing.*;

public class CustomConfirmDialog extends JDialog {
    
    private boolean confirmed = false;
    
    public CustomConfirmDialog(JFrame parent, String message) {
        super(parent, "Подтверждение", true);
        
        JPanel panel = new JPanel();
        JLabel label = new JLabel(message);
        panel.add(label);
        
        JButton okButton = new JButton("ОК");
        okButton.addActionListener(e -> {
            confirmed = true;
            dispose();
        });
        panel.add(okButton);
        
        add(panel);
        
        pack();
        setLocationRelativeTo(parent);
    }
    
    public boolean isConfirmed() {
        return confirmed;
    }
    
    public static void main(String[] args) {
        JFrame frame = new JFrame();
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(300, 200);
        frame.setVisible(true);
        
        CustomConfirmDialog dialog = new CustomConfirmDialog(frame, "Вы уверены?");
        dialog.setVisible(true);
        
        if (dialog.isConfirmed()) {
            System.out.println("Подтверждено");
        } else {
            System.out.println("Отменено");
        }
    }
}


В этом примере мы создаем свое собственное диалоговое окно подтверждения без кнопки "Отмена". Вместо этого мы добавляем только кнопку "ОК" для подтверждения операции.


Если у вас возникли дополнительные вопросы или вы используете другую библиотеку для создания диалоговых окон, пожалуйста, уточните это, чтобы мы могли предложить более точное решение.