0

Dojox 1.3 Datagrid の高さを 1 行 (Excel など) に固定しようとしています。現在の機能では、1 行に収まりきらないデータがある場合に行の高さが自動的に増加します。

これを達成する簡単な方法はありますか?これがスプレッドシートのデフォルトの動作であることを考えると、データグリッドの機能を組み込む必要があるようです。

助けてくれてありがとう

4

3 に答える 3

1

ハックを見つけました!

これを列フォーマッタとして使用します。

function(obj){
    return "<div style='height:15px;text-overflow:ellipsis'>"+obj+"</div>"
}

これは単なるハックであり、行セレクターに問題が発生しています。しかしとにかく、これが皆さんのお役に立てば幸いです。

于 2011-12-04T05:29:47.337 に答える
1

できると思います。

これが私が実験してきたものです:
クラス .dojoxGridCellContent に、以下を追加します:

空白:nowrap; オーバーフロー:非表示;

私の "Squeeze/Expand" 関数では、小さな関数を使用してクラス属性を動的に変更し、グリッドを再描画します。

私は、垂直方向のビジュアル スキャン (必要に応じてセルの内容を切り捨てる) を容易にするために、行 (Excel と html の両方) を高さ 1 "行" までクランチできる必要があると強く信じています。それらを再度展開して、特定の行のセルの内容全体を表示します。

任意のセルに可能なすべてのテキストが収まるように手動で列のサイズを変更することは、任意のセルにさまざまな量のテキストがある場合、ひどい解決策です。生産性アプリの場合、機能しない余白は敵です。

Dojo にこの便利なことを行うための方法が組み込まれていることを望みます (また、多年にわたるクロスブラウザーの条件付き省略記号の問題も解決します)。

于 2011-03-01T20:46:22.303 に答える
0

高さは設定できませんが、幅は調整できます。文字列を 1 行に収めるにはセルの幅が通常どのくらい必要かがよくわかっている場合は、 < th > 要素にそれを設定して、1 行に収まる行数を最大化できます。

<table  //dojo grid properties>
    <thead>
        <tr>
            <th width="90px" field="fieldName" ...>
                Field Name
            </th>
            ...
        </tr>
    </thead>
</table>

お役に立てれば。

于 2009-08-14T13:07:29.730 に答える