2017-10-21 20 views
0

大規模なグリッドデータを格納するカスタムwxPythonテーブルがあります。 wikiとwxPythonのデモで実装しました。それを機能させるために、私はいくつかのGridTableBaseメソッドを上書きします。wxPythonカスタムテーブルの列名を設定

class HugeTable(gridlib.GridTableBase): 
.... 

def GetColLabelValue(self, col): 
    """                        
    Get col label from dataframe                  
    """                    
    if len(self.dataframe): 
     return self.dataframe.columns[col] 
    return '' 

私は次のコードでSetColLabelValueを上書きしています:私はGetColLabelは次のようになりますので、パンダのデータフレームに私のグリッドデータを格納しています。このコードは、列名を変更するために働く

def SetColLabelValue(self, col, value): 
    """                        
    Set col label value in dataframe                 
    """ 
    if len(self.dataframe): 
     col_name = str(self.dataframe.columns[col]) 
     self.dataframe.rename(columns={col_name: str(value)}, inplace=True) 
     return '' 
    return '' 

が、このエラーが発生します:

TypeError: invalid result from HugeTable.SetColLabelValue() 

このエラーが発生している理由はわかりません。

私には2つの質問があります。 1.どのようなリターン値が期待されるのかをどのようにして知ることができますか? 2.このエラーを防ぐにはどうしたらいいですか?

バージョンノート:私はOS X上で

+1

ドキュメンテーションはここにあります:https://wxpython.org/Phoenix/docs/html/index.htmlあなたの場合、ドキュメントは戻り値について何も言わないので、おそらくは「None」である必要があります –

+0

私は試しましたこのエラーを作成します: 'TypeError:HugeTable.GetValue()からの無効な結果、このタイプのC/C++ wxStringにNoneTypeを変換できません。 ' –

+0

ああ、私は間違っていました。それは動作します!ありがとう –

答えて

0

ドキュメントをwxPythonのフェニックス4.0.0a1を使用しています現在地:https://wxpython.org/Phoenix/docs/html/index.html

''の代わりにNoneを返すようにSetColLabelを編集すると、この問題が修正されます。

関連する問題