テーブルボックスのわずかな問題(問題の長いリストにもう1つ)に気づきました。 テーブルボックスにかなり長い文字列を追加しようとしていますが、テーブルボックスは実際には複数の行をサポートしていないため、テーブルボックスで列ボックスを使用してみました(<< Set Wrap())...これに関する問題は他のすべてを壊す
Names Default To Here(1);
tb = Table Box(
nceb = Number Col Edit Box("Order", []),
scb1 = String Col Box("103width", {}),
cb = Col Box("longstring", {}),
scb2 = String Col Box("104width", {}),
);
nceb << Set Width(40);
scb1 << Set Width(103);
scb2 << Set Width(104);
New window("",
tb
);
textb = Text Box("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADDD", << Set Wrap(150));
long_str = "speciallylongname";
Eval(EvalExpr(
tb << Add Row({1, Expr(long_str), Expr(textb), Expr(long_str)});
));

103widthが折り返され、2行目のみが表示されているようです。
誰かが私がこれをどのように扱うことができるか良いアイデアを持っていますか? これらの3つはすぐに私の頭に浮かびます:
- テキストボックスで列ボックスのみを使用する必要があり、ユーザーがテーブルボックスの行を簡単に選択できないことを受け入れるだけですか?
- 新しい表示ボックス要素のカスタムクラスを作成する必要がありますか(テーブルボックスをあきらめる場合のように)
- 全文で非表示の列を作成してから、文字列列ボックスに表示できる最大幅を計算し、それらのみを表示します。