問題タブ [squeak]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
9059 参照

string - Smalltalk - 2 つの文字列が等しいかどうかを比較する

Smalltalk で 2 つの文字列を比較しようとしていますが、何か間違っているようです。

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

未処理の例外: ブール値以外の受信者です。真実を求めて進みます。

私が間違っていることは何か分かりますか?

0 投票する
4 に答える
929 参照

string - Smalltalk - TAB 文字の挿入 (Visual Works)

2 つの文字列の間にタブを挿入するのに問題があります。

私はもう試した:

また

しかし、これら 2 つのメッセージのいずれも理解されていません。ビジュアルワークスを使用しています。

0 投票する
2 に答える
698 参照

squeak - Squeakのパラメータとして関数を渡す

Squeakは純粋にオブジェクト指向であるため、関数をパラメーターとして他の関数に渡すことができるはずですが、これについて調べていたところ、これに関する情報は見つかりませんでした。私の直感は正しいですか?もしそうなら、それはどのように行われ、後でどのように呼び出すのですか?

0 投票する
3 に答える
803 参照

smalltalk - Squeak/Pharo Smalltalk で継承されたメソッドを表示する

Smalltalk の VisualWorks および Dolphin バージョンには精通していますが、Squeak は使用したことがありません。私は、Squeak の「クリーンアップされた」フォークである Pharo に慣れてきました。

私は、クラスによって実装されたメソッドのみ、または継承されたメソッドと実装されたメソッドの両方を表示する機能をクラス ブラウザに用意することに慣れています。

この便利な機能が Squeak にないのでしょうか、それとも見つけられなかったのでしょうか?

0 投票する
2 に答える
185 参照

squeak - コンストラクターが見つかりません

Squeak で新しいクラスを実装しようとしていますが、何らかの理由でテストを実行すると、メッセージが定義されているにもかかわらず、MessageNotUnderstood エラーが発生します。クラスコード:

そして、ここに私が実行したテストがあります:

私が間違っていることは何か分かりますか?私の現在の理論では、コンストラクターを呼び出すときはまだオブジェクトがないため、少し異なるはずです (オブジェクトまたは protoObject に同じ名前の事前定義された関数があるはずです)。オブジェクトを変更せずに、非標準の名前付きコンストラクターを定義しようとしていますか?

0 投票する
2 に答える
312 参照

squeak - 継承の場合のコンストラクタ (Squeak)

Bが継承するクラスAがあります。継承には一連のパラメーターが含まれており、両方の場合 (A オブジェクトまたは B オブジェクトのどちらを作成する場合でも) にすべてのパラメーターを既定値に初期化する必要があります。B を作成すると最初に A を作成する必要があるため、初期化を A のコンストラクターに入れることにしました。ただし、これは自動的に行われているようには見えず、スーパー コンストラクターを手動で呼び出す方法がわかりませんでした。誰かが私を助けることができますか?

0 投票する
1 に答える
738 参照

oop - Smalltalk でメッセージの送信者を取得する

自分自身をパラメーターとして手動で渡すことなく、Smalltalk でメッセージの送信者を取得する実用的な方法はありますか?

より具体的には、クラス固有のプレフィックスをクラスに渡される ID に追加したいので、ClassA が (クラス側で) 送信した場合

ClassB は内部で「myId」を「ClassB-myId」または類似のものとして扱う必要があります。

自己でなければならない追加のパラメーターを使用してこれを実装しました

しかし、この明示的な自己発信なしで解決策があれば、とてもうれしいです。

0 投票する
1 に答える
308 参照

smalltalk - PolygonMorphに画像を挿入するにはどうすればよいですか?

テクスチャをPolygonMorphに取り込む必要がありますが、これらには色/塗りつぶしとしてInfiniteFormが必要なようです。

後でPolygonMorphを回転させる必要があり、PolygonMorphを移動すると、表示されるテクスチャに副作用が生じるため、InfiniteFormは解決策ではありません。
挿入されたテクスチャもスケーリングできると非常に便利です。

既存のPolygonMorphを置き換える(または少なくともPolygonMorphの形状を維持する)ことなく、これをどのように行いますか?

0 投票する
1 に答える
196 参照

unit-testing - Squeakでユニットテストを自動化する方法

生徒から提出されたSqueakの宿題をチェックしています。私はたくさんのテストを含むSUnitテストケースを作成しましたが、今度はすべての提出物でこれらを実行したいと思います。

Squeakの内部からでも、シェルスクリプトを使用してでも、生徒の提出物を読み込み、テストケースを実行し、結果を何らかの形式で保存するプロセスを何らかの方法で自動化したいと思います。

私は2つの大きな問題に遭遇しました:

  1. シェルからSqueakを操作する方法がわかりません。たとえば、画像を読み込んで、そこで特定のコマンドのセットを実行するにはどうすればよいですか。オンラインで例を探していますが、画像を読み込むことすらできませんでした。
  2. すべてをSqueak内に保持しようとしましたが、既存のクラスを含むソースファイルをロードすると、既存のクラスがオーバーライドされるだけでなく(問題ありません)、これらのクラスへの以前の参照がすべて無効になり、再実行できなくなります。テスト。

詳細情報:すべての学生が、1つ以上のクラスを含むソースファイル(画像ファイルではない)を提出しました。すべての提出物には、特定の名前のクラス(たとえば、「SubmissionClass」)が少なくとも1つ含まれています。

0 投票する
2 に答える
531 参照

user-interface - Squeak / Morphic GUI でマウスホイールを使用する方法

Morphic / Squeak でグラフィカル ユーザー インターフェイスを実装しています。一部の項目にはドラッグ アンド ドロップ機能があります。ドラッグ中に、これらのアイテムをマウスホイールで回転できるようにしたいです。

最初の問題は、マウスホイールを使用するとドラッグ操作が終了し、ドロップ (試行) につながることです。どうすればそれを抑制できますか?同時に mouseWheelEvent を起動できますか?

2 番目の問題: どうすればモーフにマウスホイール イベントを割り当てることができますか? 前述のように、このイベントは、このモルフをドラッグしている間のみ関連します。(解決済み)