PDA

View Full Version : Grid in a Tab ?



kolbek
10 Jun 2009, 12:24 AM
Hi,

First of all, sorry for my bad English, I'm French...

I've a problem using a Grid in a Tab...

I've a function to add tab in my TabPanel :

function addTab(titre, html){
var libelle = titre;
zoneOnglets.add({
title: libelle,
iconCls: 'nav',
html: html,
autoLoad:'array-grid.html',
closable:true
}).show();
}

This function work a little...

array-grid.html is an exemple in the extjs package. When I run array-grid.html I have some lines of text and the grid in my screen, but when I run my application and use addTab function, I just have some lines of text and the grid not appear...

Can you help me please ?

Thanks you.

Animal
10 Jun 2009, 12:26 AM
CREATE the GridPanel. Put it into a variable myGridPanel, then...



myTabPanel.add(myGridPanel);
myTabPanel.setActiveTab(myGridPanel);


What's all this ".html" stuff? HTML? Forget it.

kolbek
10 Jun 2009, 12:37 AM
Somthing like :


function addTab(titre, html){
var libelle = titre;
zoneOnglets.add(new GridPanel()).show();
}???


EDIT : Is it possible tu put the myGridPanel in another .js file and include this js file ?

Animal
10 Jun 2009, 12:52 AM
Yep:



<script type="text/javascript" src="where my gridpanel is created.js"></script>

kolbek
10 Jun 2009, 1:00 AM
In the grid file :

Ext.onReady(function() {
var myGridPanel = new Ext.GridPanel()....
}

?

Or not "Ext.onReady(function() {"

?

Sgt.Pepper
10 Jun 2009, 1:03 AM
Use the onReady function only once (in your main Script).

Animal
10 Jun 2009, 1:15 AM
In that file, have a function which creates the GridPanel when you ask it:



function getMyGridPanel() {
var result = new Ext.grid.GridPanel{
...
});
return result;
}


Then, you can just do



var newGrid = getMyGridPanel();
myTabPanel.add(newgrid);
mytabPanel.setActiveTab(newGrid);

kolbek
10 Jun 2009, 1:19 AM
Okey, thanks you, I try this when I've a moment...

kolbek
10 Jun 2009, 9:47 AM
I've an error :

Error : missing ; before statement
Source File : http://localhost:8888/xxx/src/interface/gUsers/gUsers.js
Line : 2, Row : 30
Source Code :
var result = new Ext.grid.GridPanel{

Any ideas ?

Animal
10 Jun 2009, 11:26 AM
Why post? It's just a basic syntax error.

kolbek
11 Jun 2009, 12:24 AM
It's OK... Thanks.

But I've another question...

Il my example, I try the array-grid of Ext JS example with datas as :

var myData = [
['3m Co',71.72,0.02,0.03,'9/1 12:00am'],
['Alcoa Inc',29.01,0.42,1.47,'9/1 12:00am'],
['Altria Group Inc',83.81,0.28,0.34,'9/1 12:00am'],
['American Express Company',52.55,0.01,0.02,'9/1 12:00am'],
['American International Group, Inc.',64.13,0.31,0.49,'9/1 12:00am'],
['AT&T Inc.',31.61,-0.48,-1.54,'9/1 12:00am'],
['Boeing Co.',75.43,0.53,0.71,'9/1 12:00am'],
['Caterpillar Inc.',67.27,0.92,1.39,'9/1 12:00am'],
['Citigroup, Inc.',49.37,0.02,0.04,'9/1 12:00am'],
['E.I. du Pont de Nemours and Company',40.48,0.51,1.28,'9/1 12:00am'],
['Exxon Mobil Corp',68.1,-0.43,-0.64,'9/1 12:00am'],
['General Electric Company',34.14,-0.08,-0.23,'9/1 12:00am'],
['General Motors Corporation',30.27,1.09,3.74,'9/1 12:00am'],
['Hewlett-Packard Co.',36.53,-0.03,-0.08,'9/1 12:00am'],
['Honeywell Intl Inc',38.77,0.05,0.13,'9/1 12:00am'],
['Intel Corporation',19.88,0.31,1.58,'9/1 12:00am'],
['International Business Machines',81.41,0.44,0.54,'9/1 12:00am'],
['Johnson & Johnson',64.72,0.06,0.09,'9/1 12:00am'],
['JP Morgan & Chase & Co',45.73,0.07,0.15,'9/1 12:00am'],
['McDonald\'s Corporation',36.76,0.86,2.40,'9/1 12:00am'],
['Merck & Co., Inc.',40.96,0.41,1.01,'9/1 12:00am'],
['Microsoft Corporation',25.84,0.14,0.54,'9/1 12:00am'],
['Pfizer Inc',27.96,0.4,1.45,'9/1 12:00am'],
['The Coca-Cola Company',45.07,0.26,0.58,'9/1 12:00am'],
['The Home Depot, Inc.',34.64,0.35,1.02,'9/1 12:00am'],
['The Procter & Gamble Company',61.91,0.01,0.02,'9/1 12:00am'],
['United Technologies Corporation',63.26,0.55,0.88,'9/1 12:00am'],
['Verizon Communications',35.57,0.39,1.11,'9/1 12:00am'],
['Wal-Mart Stores, Inc.',45.45,0.73,1.63,'9/1 12:00am']
];
Is it possible to use a php file to take datas of a mySql database ?

Thanks you...

Animal
11 Jun 2009, 12:30 AM
Configure your Store with an HttpProxy.

kolbek
11 Jun 2009, 12:32 AM
With a Ext.data.JsonStore it's running too ?

Animal
11 Jun 2009, 2:47 AM
See your examples directory.

examples/grid/paging.js

Remember that you will use an HttpProxy, not a ScriptTagProxy because you are not doing cross-domain.

kolbek
11 Jun 2009, 4:04 AM
Ok thanks you, I try this, but it's work with :


var storeGUsers = new Ext.data.JsonStore({
root: 'results',
url: 'loadData.php',
fields: [
....
]
});
storeGUsers.load();I try too tu save data with php in my database, I search a tips ^^

Animal
11 Jun 2009, 4:06 AM
you think that's enough info for somebody hundreds of miles away to debug your app????:-/

kolbek
11 Jun 2009, 4:13 AM
No, I thank you for your help, what I wanted to say it is that I think of succeeding I even for the saving in database.

I gave you simply newsshort stories of my progress...

Animal
11 Jun 2009, 4:40 AM
For saving you might want to look at the Ext.direct examples in your examples directory.

The docs are not very full on that yet (Mainly because the documenters aren't fully up to speed on it, I know I am not)

mjlecomte
11 Jun 2009, 6:10 AM
There are some grid examples in the wiki by the way. They aren't 3.0 versions, but they should give you a rough idea. There's also a couple of books out that would help.