Как расширить Java-класс в Jython? - PullRequest
2 голосов
/ 28 февраля 2012

Я пытаюсь расширить Plot.java в классе Jython и использовать методы "setSize () и setButtons ()" в Plot.java в подклассе Histogram.py. Однако я не могу сделать это, я получаю ошибку, что глобальная переменная setSize () не определена. Может кто-нибудь сказать мне, в чем проблема?

class Histogram(Plot):
    dataset = 0;
    def __init__(self):
        theJFrame = JFrame();
        theJFrame.setSize(400, 350);            #outer box
        setSize(self,350, 300);                 #graph window
        setButtons(self,true);                  #buttons to print, edit, etc.
        setMarksStyle(self,"none");             #do not show marks at points

Ответы [ 2 ]

3 голосов
/ 28 февраля 2012

Дейв Ньютон прав, но также обратите внимание, что Jython выставляет установщики и получатели Java в качестве свойств, поэтому self.size = (350, 300) также работает (и немного красивее для разработчика Python).Чтобы сэкономить немного времени, вы можете даже вызывать сеттеры из самого конструктора JFrame следующим образом:

theJFrame = JFrame(
    size = (400, 350)            #outer box
)

Подробнее см. http://www.jython.org/jythonbook/en/1.0/GUIApplications.html.

2 голосов
/ 28 февраля 2012

Использование self.setSize(350, 300) и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...