問題タブ [reparenting]
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.
swing - X-Window を再親化し、Java コンポーネント ツリーに挿入する
Java フレーム (Java アプリから) で X-Window (C++ アプリから) の親を変更する必要があります。この X-Window は、z-Order が尊重されるように、Java コンポーネント ツリー内に挿入する必要があります。そのためには、次のことを理解する必要があります。
- まず、Java アプリケーションによって作成されたコンポーネント ツリーと、対応する X-Window ツリーとの正確な関係。
- 第二に、reparent のおかげで Java ツリーに X-Window を挿入できるかどうか、およびどこに挿入できるか。
- 第 3 に、ウィンドウ/コンポーネント スタックの処理方法: どのウィンドウ/コンポーネントが別のウィンドウの上にあるのか。
数週間の調査...しかし、これらの質問に関するリソースは見つかりません...
質問について 1.私が理解している限り、コンポーネントと他の 2 つのフレームを含む Java メイン フレームを作成すると、Swing ツリーは次のようになります。
X-Window ツリーについて: 各フレームは重いコンポーネントなので、各フレームには X-Window ID があります。したがって、X-Window ツリーは次のようになります。
質問について 2.私の質問は、Swing ツリーの他のコンポーネントの真ん中にアプレット (つまり重量コンポーネント) を挿入するとどうなるかということです。X-window はどのように見えるでしょうか? この方法で、Java アプリケーションの X-Window の親を変更でき、この X-Window が Java ツリーに挿入されることを願っています。
質問について 3.X-Window を再親化/Java アプリケーションに挿入できたとしても、z オーダーが尊重されるかどうかはわかりません。実際に試してみたところ、Java Frame のすべてのコンポーネントの上に X-Window が表示されました。ウィンドウ/コンポーネント スタックの処理方法と、Java および X-Window ツリーとの関係がよくわかりません。
flash - 親が変更されると、Flashオブジェクトが停止します
Flashオブジェクトの下からドキュメントを無意識に引き出す必要があります。appendChild()
DOMからオブジェクトを一時的に削除すると、再生が停止します。これは認識できますが、「アトミック」操作(最初にオブジェクトを削除せずに目的の親を呼び出す)を使用しても、オブジェクトをツリー内で移動すると再生も停止します。
オブジェクトを停止せずにドキュメントを置き換える方法はありますか?
tfs - 子ブランチの親をその祖父母に変更する
次のブランチ構造があります。
Release 1.1 を Main に再親化したいので、次のようになります
これを行う理由は、多くの変更セットをメインからリリース 1.1 にマージする必要がありますが、リリース 1 にはマージしないためです。
次のコマンドを使用して、メインからリリース 1.1 へのベースレス マージを実行しようとしています。
チェックインすると、Release 1.1 を Main に再ペアレント化できます。
しかし、問題は、このコマンドは Main からすべてをマージし、マージ関係を作成したいだけです。Main から Release 1.1 まですべてをマージしたくはありません。その間に、他のブランチで多くの変更が行われたからです。
それを達成する方法はありますか、それとも将来のすべての変更セットを毎回ベースレスマージする必要がありますか?
qml - qmlの動的再親化
再作成せずにqmlアイテムのタイプを動的に変更したい。この例では、ウィンドウがポップアップ ウィンドウに変換されます。問題は、それを qml アイテムに変換する方法です。
three.js - Three.js 追加: 位置を保持
Object3D を別の Object3D (「追加」メソッド) に追加すると、子は親のものに応じて変換を変更します。
親に追加した後、子の位置/回転/スケールを保持する方法はありますか?
フィドル: https://jsfiddle.net/pqfzd8a2/1/
何が行われましたか?
- メッシュが回転します。
- mesh2 と mesh3 は、同じ位置にある互いのクローンです。
- mesh2 がメッシュに追加され、mesh3 がシーンに追加されました。
mesh2 と mesh3 の違いは、それらが別の親に追加 (ペアレント化) されていることです (それに応じて、メッシュと直接シーンに)。何かに追加 (親) される前は、それらは同じ位置にありました。要点は、オブジェクトを追加 (ペアレント化) 前の状態に保つことです。
期待される結果: メッシュ 2 とメッシュ 3 は同じ位置にある必要があります。
実際の結果: メッシュ 2 は、追加後に位置/回転/スケールを変更します。
親になった後、オブジェクトをグローバルな変換を維持する方法は?