한 시간 빨리 찾 았 는데 잘못 이 어디 있 는 지 모 르 겠 어 요...답답 하 다.나 는 마우스 왼쪽 에서 tree 노드 를 클릭 하고 오른쪽 에 탭 페이지 를 만 들 었 다.이것 은 이미 실 현 될 수 있다.그래서 나 는 새 탭 에 Grid 를 끼 워 넣 었 다.이상 한 문제 가 생 겼 다.FF 와 IE 는 모두 잘못 보고 하지 않 았 다.근 데 Grid 는 안 나 와 요.코드 가 잘못된 줄 알 았 는데그래서 저 는 제 코드 문 제 를 미 친 듯 이 찾 았 습 니 다.본의 아니 게 FF 의 firbug 플러그 인 인터페이스 를 끄 자 grid 가 현실 로 나 왔 습 니 다.원래 내 창 에 어떤 변화 가 있어 야 Grid 가 표 시 됩 니 다.이것 은 제 코드 문제 입 니까?bug 입 니까?어떻게 해결 합 니까?보충 해 보 세 요.저 는 TabPanel 에서 items 로 grid 대상 을 관리 하 는 데 문제 가 없습니다.근 데 제 가 이 벤트 를 추가 해서 관리 하 는 데 문제 가 생 겼 어 요.서 류 는 모두 클래스 가방 안에 봉 인 된 것 이다.그래서 중요 한 부분 만 붙 이 는 건 감청 사건 입 니 다.Java 코드 listeners:{'click':function(node,event){event.stopEvent();/루트 노드 의 선택 판단 을 if(node.text=="SamPeng"|node.text=="문장 관리"|node.text==="제품 관리"|node.text=="정보 관리"|node.text==="방문 관리"){}else{var n=main.getComponent(node.id);if (!n){//이 패 널 을 열 었 는 지 여 부 를 판단 합 니 다./누 른 글 목록 이 라면 목록 대상 을 새로 만 들 고 새 탭 if(node.text=="글 목록"){var grid=new SamPeng.account.list();n = main.add({ 'id':node.id, 'title':node.text, items: [{layout:"fit",items:grid}] });} } main.setActiveTab(n); } } listeners:{ 'click':function(node, event) { event.stopEvent(); //뿌리 노드 의 선택 판단 제거 if(node.text=="SamPeng"|node.text=="문장 관리"|node.text=="제품 관리"|node.text==="정보 관리"|node.text==="방문 관리"){ }else{ var n = main.getComponent(node.id); if (!n){//이 판 넬 을 열 었 는 지 여 부 를 판단 합 니 다. //누 른 글 목록 이 라면 목록 대상 을 새로 만 들 고 새 탭 에 던 집 니 다. if(node.text=="문장 목록"){ var grid=new SamPeng.account.list(); n = main.add({ 'id':node.id, 'title':node.text, items: [{layout:"fit",items:grid}] });} } main.setActiveTab(n); } } 그리고 제 tab 패 널 생 성 클래스 자바 코드*Copyright(c)2008-2010,SamPeng Inc.*/package("SamPeng.panel");/***역할:중간 에 있 는 메 인 디 스 플레이 패 널 만 들 기*작성 자:SamPeng*시간:2008 년 9 월 24 일 1:24:42*/SamPeng.panel.main=function(config){var config=config|{};var deconfig={renderto:'mainlay',width:1000,height:561,activeTab:0,plain:true,border:true,tabPosition:'top',frame:true,autoScroll:true,enableTabScroll:true,//너 비 를 초과 하면 자동 으로 양쪽 에 스크롤 바 항목 이 많이 나타 납 니 다.[{title:"첫 페이지"}}Ext.applyIf(config,deconfig);SamPeng.panel.main.superclass.constructor.call(this,config); } Ext.extend(SamPeng.panel.main,Ext.TabPanel); * Copyright(c) 2008-2010, SamPeng Inc. */ package("SamPeng.panel"); /** * 역할:중간 에 있 는 메 인 디 스 플레이 패 널 만 들 기*작성 자:SamPeng*시간:2008 년 9 월 24 일 1:24:42*/ SamPeng.panel.main = function(config){ var config=config || {}; var deconfig={ renderTo:'mainlay', width:1000, height:561, activeTab:0, plain: true, border: true, tabPosition: 'top', frame: true, autoScroll: true, enableTabScroll:true,//폭 을 초과 하면 자동 으로 양쪽 에 스크롤 바 가 많아 집 니 다. items:[{ 제목:"첫 페이지" } ] } Ext.applyIf(config,deconfig); SamPeng.panel.main.superclass.constructor.call(this,config); } Ext.extend(SamPeng.panel.main,Ext.TabPanel); Grid 는 데이터 원본 과 속성 만 붙 입 니 다.*********************************************************************************************************************************************************************************************************.data.Store({proxy:new Ext.data.HttpProxy)({url:'php/articlelist.php', disableCaching:false }), reader: new Ext.data.JsonReader({ root: 'results', totalProperty: 'total', id:'id' },[ {name: 'id'}, {name: 'name'}, {name: 'typename'}, {name: 'time'}, ]) }); this.dataStore.load({params:{start:0, limit:this.myPageSize}}); 。。。 。。。많이 생략.../**************************************************************************************구조 편집 목록 패 널(GridPanel)*************************************************************/SamPeng.account.list.superclass.constructor.call(this,{id:'list-account-panel',ds:this.dataStore,cm:artcm,sm:selectBoxModel,높이:500,tbar:pagingbar,bbar:menubar,loadMask:{msg:'데이터 읽 기 중...'},enableColumnHide:false,autoScroll:true//region:'center'});Ext.extend(SamPeng.account.list, Ext.grid.GridPanel, { reload : function() { this.dataStore.load({params:{start:0, limit:this.myPageSize}}); }, // 삭제 데이터//서버 를 호출 하여 파 라 메 터 를 받 아들 여 삭 제 된 데이터 deleteData:function(jsonData){this.dataStore.load({params:{start:0,limit:this.my PageSize,delData:jsonData})를 되 돌려 줍 니 다.} /******************************************************* * 표 에 데이터 원본 만 들 기 * 배경 을 연결 하고 각 페이지 의 데이터 목록 에 따라 되 돌려 줍 니 다. * JSon 데이터 형식 으로 전달 *******************************************************/ this.dataStore = new Ext.data.Store({ proxy: new Ext.data.HttpProxy({ url: 'php/article_list.php', disableCaching:false }), reader: new Ext.data.JsonReader({ root: 'results', totalProperty: 'total', id:'id' },[ {name: 'id'}, {name: 'name'}, {name: 'typename'}, {name: 'time'}, ]) }); this.dataStore.load({params:{start:0, limit:this.myPageSize}}); 。。。 。。。많이 생략 하 다. /******************************************************* * 구조 편집 목록 패 널(GridPanel) *******************************************************/ SamPeng.account.list.superclass.constructor.call(this, { id: 'list-account-panel', ds: this.dataStore, cm: art_cm, sm: selectBoxModel, height:500, tbar: pagingbar, bbar: menubar, loadMask:{msg:'데이터 읽 기 중...'}, enableColumnHide: false, autoScroll:true //region:'center' }); Ext.extend(SamPeng.account.list, Ext.grid.GridPanel, { reload : function() { this.dataStore.load({params:{start:0, limit:this.myPageSize}}); }, // 삭 제 된 데이터//서버 를 호출 하여 파 라 메 터 를 받 아들 여 삭 제 된 데 이 터 를 되 돌려 줍 니 다 deleteData:function(jsonData){ this.dataStore.load({params:{start:0, limit:this.myPageSize, delData:jsonData}}); } 협객 여러분 감사합니다!문 제 는 내 브 라 우 저가 움 직 이지 않 고 Grid 가 죽어도 표시 되 지 않 는 다 는 것 이다.브 라 우 저가 바 뀌 자 Grid 가 나 왔 다.그리고 제 가 설정 한 매개 변수 크기 에 따라 표 시 됩 니 다.도대체 문제 가 어디 에 있 는 지 모르겠다.이렇게 많아코드 에 문제 가 있 는 줄 알 았 는데 Firebug 가 잘못 보고 되 지 않 았 음 을 보고 Firebug 가 확실히 서버 에서 데 이 터 를 얻 었 음 을 관찰 하 십시오.오랫동안 문 제 를 생각 하지 못 했 지만 아무것도 하지 않 고 창 을 최소 화하 고 최대 화 할 때 데이터 가 또 나 왔 습 니 다!!이것 은 Extjs 의 bug 일 수 있 습 니 다.인터넷 에서 비슷 한 해결 방법 을 찾 았 습 니 다.이것 을 찾 았 습 니 다.나중에 qiuye 402 대 협 과 의사 소통 을 해서 마침내 해결 되 었 습 니 다.레이아웃 새로 고침 의 문제 입 니 다.가장 바깥쪽 용 기 를 다시 render 하면 됩 니 다.가장 바깥쪽 용 기 는 보통 viewport 와 유사 한 것 입 니 다.처음에는 몰 랐 습 니 다.grid 를 포함 한 panel 을 다시 렌 더 링 했 습 니 다.효과 가 없 었 습 니 다.render viewport 를 다시 렌 더 링 했 습 니 다.모든 것 이 OK!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다: