2012-02-16 8 views
0

質問は簡単だと思われますが、それは私にとって問題を引き起こします。私は2つのdataField:peerID、nameを持つdataGridを持っています。新しいユーザーがグループに参加したときにグリッドの情報が動的に更新されました(私はチャットを作成しています)。私はそれが切断された後、グリッドから削除されたユーザーに関するその情報が必要です。フレックス、dataGridのデータと文字列の値を比較する方法は?

"NetGroup.Neighbor.Disconnect":event私は "event.info.peerID"値とグリッド内のすべてのpeerID値を比較し、切断されたユーザーに関する情報を削除したいと考えています。

for (var i:uint, len:uint = txtDataArray.length; i < len; i++) 
         { 
         if (txtDataArray.source[i] == event.info.peerID) 
         { 
          txtDataArray.removeItemAt(i); 
         break; 
         } 
          } 



<s:DataGrid id="txtData" x="11" y="59" width="238" height="164" alternatingRowColors="[ #67676767, #555555]" borderVisible="true" chromeColor="#555555" color="#CCCCCC" contentBackgroundColor="#555555" dataProvider="{callerns}" fontWeight="bold" requestedRowCount="4" rollOverColor="#08700D" selectionColor="#08700D" symbolColor="#CCCCCC"> 
     <s:columns> 
      <s:ArrayList id="txtDataArray"> 
       <s:GridColumn dataField="name" headerText="USERS ONLINE"></s:GridColumn> 
       <s:GridColumn dataField="peerID" headerText="USER ID" visible="true"></s:GridColumn> 
      </s:ArrayList> 
     </s:columns> 
    </s:DataGrid> 

をしかし、それは全く動作しません:

は、私は次の構造を使用しようとしています!

txtDataArray.source [i](またはtxtDataArray.getItemAt(i))が値の傍らに[object GridColumn]を返したことに気付きました。だから、私は2つの質問があります: 1)正確なセルの値を取得する方法? 2)ユーザーが切断した後の整理された情報の削除方法

ありがとうございます!

答えて

0

なぜtxtDataArray.source[i]を使用していますか?
あなたはこのように書くことができます。

for (var i:int; i < callerns.length; i++) 
    { 
     if (callerns[i].peerID == event.info.peerID) 
     { 
      callerns.removeItemAt(i); 
      break; 
     } 
    } 

たりしたい場合はfor eachを使用しています。
ところで、私はあなたのDataGridのスタイルが好きです。

+0

非常にありがとうございます!私はこの単純な問題を解決するために半日を真剣に過ごしています!あなたは多くの時間を節約します。この小さな質問を解決するよりもチャット機能全体を実行する方が簡単なようです。私は、異なる大学の学生のためのコミュニケーションツールとして計画されているチャット全体に同じスタイルを使用しています。ベータ版はhttp://www.koondoo.com/index.php/chatでご覧になれます。 100%完成したわけではありませんが、主な機能は仕事です。ありがとうございました! – Zhekka

関連する問題