Hybrid View
-
25 Nov 2012 10:20 AM #1
Unanswered: Kretik to make a complaint
Unanswered: Kretik to make a complaint








LEUTE............
es ist nicht nach vollziehbar was ihr da geschrieben habt....
wegen den einfachsten sachen bin ich mehrere tage am suchen....
und wenn ihr einem beschreibt wie es gehen soll, funktioniert es nicht....
Grid....
1. autoselect (first row)
2. set empty row
(grid in voller höhe wie mann sie angibt mit leeren zeilen auffüllen auch wenn keine daten vorhanden sind)
Combobox....
1. listbox width
...........................usw etc.
irgendwie kommt es mir so vor als wäre es alles nur zusammen gekehrt und es steckt keine planung dahinter
so richtige Datenbanktools sind das keine und programmierung ist das jedenfalls auch nicht.
dann tausend mal die gleichen beschreibungen für jedes einzelne Control und dann funktionieren nicht einmal alle
api's die ihr dort angebt.
und nun das ganze nochmal auf englisch für die Freunde aus den Staaten.....
PEOPLE ............
it is not enforceable by what you have written here ....
because of the simplest things I am looking for several days ....
and if ye one describes how to proceed, it does not work ....
Grid ....
1. autoselect (first row)
2. set empty row
(grid full height as it indicates man with blank lines fill up even if no data are available)
combo ....
listbox width ........................... etc etc.
somehow it seems to me as if it were just swept everything together and there's no planning behind so proper database and programming tools are not the least this is not. then a thousand times the same descriptions for each control and then do not work once all the api's angebt her there.
-
26 Nov 2012 1:15 AM #2
Wenn du das Gird auf voll Höhe haben willst, gibt es da mehrere Möglichkeiten. Zum einer kannst du die 'height' setzen. Das würde dem Grid aber ne feste Höhe geben und sich nicht anpassen.
Die beste Variante ist da wohl mit layout: 'fit' (layout im Panel) zu arbeiten. Das darf aber nicht im Grid selbst stehen, sondern in dem Container oder Panel welcher das Grid umgibt.
Um eine Zeile im Gird automatisch zu selektieren, gibt es das SelectionModel. Das kann mit grid.getSelectionModel() geholt werden und mit der methode select kann ein Datensatz ausgewählt werden.
Das mit der Combobox raff ich nich ^^Code:grid.getSelectionModel().select(0); //erste Zeile auswählen
In english please!!!
If you want to set a heigt for your grid, you can use the height config. Problem is, this wont make your grid dynamicly fit the whole area. So you can use layout: 'fit' instead. Attention!!! This config needs to be in the container or panel, which is sourrounding your grid: layout in panels.
To select a row in a grid use the selectionModel. You can get it with: grid.getSlectionModel(). The row can be selected with the method select().
And I don't get your point with the combobox o.OCode:grid.getSelectionModel().select(0); //selects the first row
-
26 Nov 2012 8:29 AM #3
ist genau das was ich mache.... ich gebe die höhe vor, sowohl für die Grid selbst, wie auch die cellhöhe.
ich habe jetzt nur das problem das die leeren zeilen nicht angezeigt werden.
siehe bild1
bild1
gridfalsch.png
Ich würde es gern so anzeigen lassen
siehe bild2
bild2
grid.png
kann ich nicht nehmen weil ich die Grid nicht allein auf dem panel anzeigen lasse, sondern es sind nochDie beste Variante ist da wohl mit layout: 'fit' (layout im Panel) zu arbeiten. Das darf aber nicht im Grid selbst stehen, sondern in dem Container oder Panel welcher das Grid umgibt.
Textfelder mit auf dem panel.
funktioniert nicht....... fehlt noch etwas.Um eine Zeile im Gird automatisch zu selektieren, gibt es das SelectionModel. Das kann mit grid.getSelectionModel() geholt werden und mit der methode select kann ein Datensatz ausgewählt werden.
ganz wichtig bei dieser funktion ist das der timeout auf 1000 festgelegt werden muss.
das ganze sieht dann wie folgt aus....
so.... nur ganz kleine informationen die fehlen haben große wirkungen...Code:setTimeout(function(){Grid.getSelectionModel().select(0);}, 1000);
wo wir wieder mal mein obriges posting bestätigen....
falls ihr euch jetzt fragt wieso setTimout? ganz einfach....
die selection vom ersten Row bzw Datensatz kann nicht erfolgen weil die Datensätze zu schnell eingelesen werden und damit auch zu schnell angezeigt. durch den timeout gebt ihr der Grid die möglichkeit den ersten row auszuwählen um ihn zu selectieren.
und nun zur
Combobox siehe bild3
bild3
bestell1.png
bilder Sagen mehr als worte.....
-
26 Nov 2012 9:12 AM #4
Das mit den leeren Zeilen könnte man simulieren, indem du leere Datensätze in den Store haust. Ansonsten müsste man die Grid.view dafür anpassen bzw. ein Plugin basteln. Das wird von ExtJs nativ nicht unterstützt :x
Das mit der Selection is mir neu, ich hab das auch schon gemacht ohne das TimeOut. Najaaa ^^
Um die Selection Liste zu manipulieren, brauchst du CSS. Dafür gibts die cls in der ComboBox. Ich wette standard is da ne mindest Breite gesetzt. Kannst ja deine eigene Klasse für baun =)
-
26 Nov 2012 10:16 AM #5
Und das nächste Problem wartet auf uns.......
Und das nächste Problem wartet auf uns.......
mann mann mann....
jetzt bin ich dabei ein reload einer liste durchzuführen
folgender plan...
ich habe eine liste dazu habe ich 4 button
jeder button ist mit einem store versehen welcher die jeweilige datenbanktabelle auswählt.
button1 db - tabelle (artikel1)
button2 (artikel2) usw.
bei klick auf button1 soll die dbtabelle artikel1 eingelesen und in der grid angezeigt werden
bei klick auf button2 soll artikel2 eingelesen werden und die daten von der artikel1 sollen nicht mehr angezeigt werden.....
also immer nur die daten aus der jeweiligen datenbanktabelle
ich hoffe ihr versteht was ich meine.
kann mir jemand erklären wie es geht?
achso.... bevor die frage kommt.... ja es sind alle datenbanktabellen gleich aufgebaut.
aber prüfen bevor ihr es postet
so langsam komme ich zu dem schluss das dieses Ext-Js wirklich nicht für den professionellen gebrauch ist....
ich versuche hier ein komplett neues projekt zu verwirklichen aber ich komme immer wieder an grenzen...
das nervt ganz schön.....
-
29 Nov 2012 2:23 AM #6
Eigentlich ist ExtJs wie ne Frau zu behandeln ^^
Code Beispiele zu testen, bevor man sie hier postet bedeutet großen Aufwand. Besonders bei deinem Beipsiel. Ich müsste mir jetz ne db aufsetzen mit 3 Tabellen, dann noch n PHP Script schreiben, welches mir die Daten liefert und ne kleine ExtJs Anwendung. Da hat glaub ich keiner Lust zu ;P
Grids benutzen ja Stores und Stores haben Proxys und Models... blabla. Du definierst die also ein Model mit den Feldern die du brauchst:
Dann noch den Store dazu:Code:Ext.define('Article', { extend: 'Ext.data.Model', fields: [ {name: 'author', type: 'string'}, {name: 'date', type: 'string'}, {name: 'content', type: 'string'} //usw.... ] });
Jetzt packst du den store in das Grid: store: 'Article'Code:Ext.define('Article', { { model: 'Article', proxy: { type: 'ajax', url: '/controller/get-articles', //kA wie dein Routing funzt ^^ reader: { type: 'json' } }, autoLoad: false });
Bei nem Klick auf den Button machst du nun folgendes:
Nun liest du den Parameter im PHP Script aus und lädst die Daten von der entsprechenden Tabelle o.O ... und zurck an ExtJs übergeben nich vergessen ^^Code:grid.getStore().load({ params: { table: 'name der tabelle' } });


Reply With Quote