Siema,mam pytanie.
W ramach ćwiczeń piszę sobie okienkowy kalkulator.Chcę podzielić program na 2 pliki.W pierwszym pliku Main znajduje się klasa odpowiedzialna za tworzenie buttonów z cyframi,znakami działań i polem do wyświetlania wprowadzanych liczb oraz wyników.
W drugiej klasie chciałem stworzyć cały mechanizm wykonywania działań,tylko że nie wiem jak uzyskać dostęp do pola tekstowego z klasy Main aby pobrać z niego dane do wykonywania operacji matematycznych.
Wiecie może jak to zrobić?
0

- Rejestracja:prawie 17 lat
- Ostatnio:prawie 5 lat
0
Jeśli klasie Obliczenia
(przestrzegaj konwencji, nazwy klas zaczynają się dużą literą) wystarczy dostęp do jednego pola tekstowego z klasy Main
można prościej:
class Obliczenia
{
void policz(JTextField pole)
{
...
}
}
//w konstruktorze klasy Main
liczydło = new Obliczenia();
//w obsłudze przycisku
liczydlo.policz(pole);
}
Gdybyś potrzebował dostępu do kilku pól (komponentów), to musiałoby by być trochę inaczej
//w konstruktorze klasy Main
liczydlo = new Obliczenia(this);
//w definicji i konstruktorze klasy Obliczenia
class Obliczenia
{
private Main owner = null;
public Obliczenia(Main owner)
{
this.owner = owner;
...
void policz()
{
//korzystając z referencji owner, odczytujemy i zapisujemy w komponentach klasy Main
}
...
//w obsłudze zdarzenia w klasie Main
liczydlo.policz();
edytowany 1x, ostatnio: bogdans
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.