Witam serdecznie,
mam ogromną prośbę robię project z JavaFX. Jednak mam pewien problem nie wiem jak do Button wczytać funkcje zmieniająca wartość danych, które są potem wyświetlane. Działa mi wywołanie tej funkcji, ale nie chce mi już wczytać ich do tabelki. Kod przedstawia się w następujący sposób:
/* * Main.fx * * Created on 2010-04-08, 21:00:13 */ package bity_parzystosci_5;
import javafx.scene.image.Image; import javafx.scene.image.ImageView; import java.lang.System; import javafx.stage.Stage.*; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.CustomNode; import filenameX.SwingTable; import filenameX.TableColumn; import filenameX.TableRow; import filenameX.TableCell; import javafx.stage.Stage; import javafx.scene.text.Text; import javafx.scene.Node; import javafx.scene.control.Button; import bity_parzystosci_5.filenameX.TableRow; import javafx.scene.text.TextOrigin; import javafx.util.Math;
/** * @author Ola */ class WartoscTekstu {
public var wynikXOR1: Integer; public var wynikXOR2: Integer; public var wynikXOR3: Integer; public var wynikXOR4: Integer; public var wynikXOR5: Integer; public var wynikXOR6: Integer; public var wynikXOR7: Integer; public var wynikXOR8: Integer; public var a: Integer on replace { } public var dysk1b: Integer on replace {
if (a == 0 and dysk1b == 0) { wynikXOR1 = 0; } if (a == 1 and dysk1b == 1) { wynikXOR1 = 0; } if (a == 1 and dysk1b == 0) { wynikXOR1 = 1; } if (a == 0 and dysk1b == 1) { wynikXOR1 = 1; } } public var b: Integer on replace { } public var dysk2b: Integer on replace { if (b == 0 and dysk2b == 0) { wynikXOR2 = 0; } if (b == 1 and dysk2b == 1) { wynikXOR2 = 0; } if (b == 1 and dysk2b == 0) { wynikXOR2 = 1; } if (b == 0 and dysk2b == 1) { wynikXOR2 = 1; } } public var c: Integer on replace { } public var dysk3b: Integer on replace { [...] } public var d: Integer on replace { } public var dysk4b: Integer on replace { [...] } public var e: Integer on replace { } public var dysk5b: Integer on replace { [...] } public var f: Integer on replace { } public var dysk6b: Integer on replace { [...] } public var g: Integer on replace { } public var dysk7b: Integer on replace { [...] } public var h: Integer on replace { } public var dysk8b: Integer on replace { [...] } }
class DaneEdytowane extends CustomNode {
public var Danes: WartoscTekstu[]; public var Danes2: WartoscTekstu[]; public var Danes3: WartoscTekstu[]; public var selection: Integer;
function utworzPrzyciski(): Node { var przyciski = Group { translateX: 2 translateY: 2 }; insert [ Text { content: "Obliczanie bitów parzystości " translateX: 215 translateY: 10 textOrigin: TextOrigin.TOP styleClass: "titleText" } Text { [...] } Text { [...] } Button { translateY: 470 text: "zwieksz objetość w dyskach" action: function () { insert WartoscTekstu { } into Danes;
} }, Button { translateX: 186 translateY: 470 text: "usuń partycje na dyskach" action: function () { delete Danes[selection];
} } ] into przyciski.content; return przyciski; }
public override function create(): Node { var przyciski = utworzPrzyciski(); Group {//do tego przycisku chce wywołac funkcje Zmien / linia kodu 350 var sprawdz = [Button { action: function () { // Zmien(); } }] var tabela1 = [SwingTable { translateX: 10 translateY: 70 width: 360 height: 80 columns: [ TableColumn { text: "Dysk 1" }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, ] rows: bind for (p in Danes) TableRow { cells: [ TableCell { text2: bind p.a }, TableCell { text2: bind p.b }, TableCell { text2: bind p.c }, TableCell { text2: bind p.d }, TableCell { text2: bind p.e }, TableCell { text2: bind p.f }, TableCell { text2: bind p.g }, TableCell { text2: bind p.h }, ] } rows2: bind for (p in Danes) TableRow { cells: [ TableCell { text2: bind p.a }, TableCell { text2: bind p.b }, TableCell { text2: bind p.c }, TableCell { text2: bind p.d }, TableCell { text2: bind p.e }, TableCell { text2: bind p.f }, TableCell { text2: bind p.g }, TableCell { text2: bind p.h }, ] } rows3: bind for (p in Danes) TableRow { cells: [ TableCell { text2: bind p.a }, TableCell { text2: bind p.b }, TableCell { text2: bind p.c },TableCell { text2: bind p.d }, TableCell { text2: bind p.e }, TableCell { text2: bind p.f }, TableCell { text2: bind p.g }, TableCell { text2: bind p.h }, ] } selection: bind selection with inverse } ] var tabela2 = [SwingTable { translateX: 10 translateY: 160 width: 360 height: 80 columns: [ TableColumn { text: "Dysk 2" }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, ] rows: bind for (p in Danes2) TableRow { cells: [ TableCell { text2: bind p.dysk1b }, TableCell { text2: bind p.dysk2b }, TableCell { text2: bind p.dysk3b }, TableCell { text2: bind p.dysk4b }, TableCell { text2: bind p.dysk5b }, TableCell { text2: bind p.dysk6b }, TableCell { text2: bind p.dysk7b }, TableCell { text2: bind p.dysk8b }, ] } rows2: bind for (p in Danes2) TableRow { cells: [ TableCell { text2: bind p.dysk1b }, TableCell { text2: bind p.dysk2b }, TableCell { text2: bind p.dysk3b }, TableCell { text2: bind p.dysk4b }, TableCell { text2: bind p.dysk5b }, TableCell { text2: bind p.dysk6b }, TableCell { text2: bind p.dysk7b }, TableCell { text2: bind p.dysk8b }, ] } rows3: bind for (p in Danes2) TableRow { cells: [ TableCell { text2: bind p.dysk1b }, TableCell { text2: bind p.dysk2b }, TableCell { text2: bind p.dysk3b }, TableCell { text2: bind p.dysk4b }, TableCell { text2: bind p.dysk5b }, TableCell { text2: bind p.dysk6b }, TableCell { text2: bind p.dysk7b }, TableCell { text2: bind p.dysk8b }, ] } selection: bind selection with inverse } ] var tabela3 = [SwingTable { translateX: 10 translateY: 260 width: 360 height: 80 columns: [ TableColumn { text: "Dysk 3" }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, TableColumn { }, ] rows: bind for (p in Danes3) TableRow { cells: [ TableCell { text2: bind p.wynikXOR1 }, TableCell { text2: bind p.wynikXOR2 }, TableCell { text2: bind p.wynikXOR3 }, TableCell { text2: bind p.wynikXOR4 }, TableCell { text2: bind p.wynikXOR5 }, TableCell { text2: bind p.wynikXOR6 }, TableCell { text2: bind p.wynikXOR7 }, TableCell { text2: bind p.wynikXOR8 }, ] } rows2: bind for (p in Danes3) TableRow { cells: [ TableCell { text2: bind p.wynikXOR1 }, TableCell { text2: bind p.wynikXOR2 }, TableCell { text2: bind p.wynikXOR3 }, TableCell { text2: bind p.wynikXOR4 }, TableCell { text2: bind p.wynikXOR5 }, TableCell { text2: bind p.wynikXOR6 }, TableCell { text2: bind p.wynikXOR7 }, TableCell { text2: bind p.wynikXOR8 }, ] } rows3: bind for (p in Danes3) TableRow { cells: [TableCell { text2: bind p.wynikXOR1 }, TableCell { text2: bind p.wynikXOR2 }, TableCell { text2: bind p.wynikXOR3 }, TableCell { text2: bind p.wynikXOR4 }, TableCell { text2: bind p.wynikXOR5 }, TableCell { text2: bind p.wynikXOR6 }, TableCell { text2: bind p.wynikXOR7 }, TableCell { text2: bind p.wynikXOR8 }, ] } selection: bind selection with inverse } ] var tekst = [Text { [...] } ] var zdjecie = [ImageView { [...] }] content: [tabela1, tabela2, tabela3, przyciski, tekst, zdjecie, sprawdz]; } }
} /* tą funkcje chciałabym wywołać w przycisku sprawdz i przypisać do zmiennych a, b,c,d,e,f,g,h / linia kodu 241 function Zmien() { var rand = (Math.random() * 2).intValue(); System.out.println(rand); return rand; }*/
var a = (Math.random() * 2).intValue(); var dysk1b= (Math.random() * 2).intValue(); var b = (Math.random() * 2).intValue(); var dysk2b= (Math.random() * 2).intValue(); var c = (Math.random() * 2).intValue(); var dysk3b= (Math.random() * 2).intValue(); var d = (Math.random() * 2).intValue(); var dysk4b= (Math.random() * 2).intValue(); var e = (Math.random() * 2).intValue(); var dysk5b= (Math.random() * 2).intValue(); var f = (Math.random() * 2).intValue(); var dysk6b= (Math.random() * 2).intValue(); var g = (Math.random() * 2).intValue(); var dysk7b= (Math.random() * 2).intValue(); var h= (Math.random() * 2).intValue(); var dysk8b= (Math.random() * 2).intValue(); var wiersz_pierwszy = WartoscTekstu { a: bind a b: bind b c: bind c d: bind d e: bind e f: bind f g: bind g h: bind h } var wiersz_drugi = WartoscTekstu { dysk1b: bind dysk1b dysk2b: bind dysk2b dysk3b: bind dysk3b dysk4b: bind dysk4b dysk5b: bind dysk5b dysk6b: bind dysk6b dysk7b: bind dysk7b dysk8b: bind dysk8b } var wiersz_trzeci = WartoscTekstu { a: bind a dysk1b: bind dysk1b b: bind b dysk2b: bind dysk2b c: bind c dysk3b: bind dysk3b d: bind d dysk4b: bind dysk4b e: bind e dysk5b: bind dysk5b f: bind f dysk6b: bind dysk6b g: bind g dysk7b: bind dysk7b h: bind h dysk8b: bind dysk8b } var Danes = [wiersz_pierwszy]; var Danes2 = [wiersz_drugi]; var Danes3 = [wiersz_trzeci]; var stylesheets: String = "{__DIR__}style.css";
Stage { title: "Obliczanie bitów parzystości" scene: Scene { stylesheets: bind stylesheets width: 1000 height: 600 content: DaneEdytowane { Danes: bind Danes with inverse Danes2: bind Danes2 with inverse Danes3: bind Danes3 with inverse } } }
Przeczytałam trochę książki i próbowałam to wywoływać, ale mi nie działa nadal :(
Jeśli ktoś miał chwilkę zerknąć na niego i mi pomóc byłabym bardzo wdzięczna.
|