問題タブ [bounds]
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.
c++ - ウィンドウがデスクトップの境界にあるかどうかを判断するC ++
特定のウィンドウがデスクトップの境界内にあるかどうかを判断するコードを書きました。
どういうわけか、うまくいきません。デスクトップの内側か外側かに関係なく、すべてのウィンドウに対してfalse
が返されます。ここで何かがひどく間違っていますが、このコードを 3 時間見つめた後でも、どこに問題があるのか わかりません。PMSG の WPARAM で送信されたポインターから RECT 構造体を読み取ろうとすると、AccessViolationException が発生します。なぜこうなった?
私のコードは次のようになり、常に false を返します。
編集: IsInBounds を呼び出した後、エラー番号 1400 (無効なウィンドウ ハンドル) が返されましたが、フック コールバックから戻る前にIsWindow(window)
、ハンドルがまだ有効かどうかを確認するために を呼び出しました。真実は、実際には有効なハンドルです! GetWindowRect が無効なハンドルだと言うのはどうしてでしょうか?
編集:私は、監視されたように MonitorFromWindow を試しましたが、NULL を返し、GetLastError を呼び出すとエラー番号が発生しました。もうおなじみの1400。MonitorFromWindow が暗黙的に GetWindowRect を呼び出しているようです。サイズは気にしませんが、ハンドルからウィンドウ座標を取得する別の方法はありますか?
java - Java では、型変数の境界は型変数の宣言にしか存在できませんよね?
型変数の境界は、クラス、インターフェイス、メソッド、およびコンストラクターの宣言にのみ表示できますか?
または、型引数として使用される型変数をバインドできますか?
編集: 例:
java - Javaでは、配列を型変数のバインドにできないのに、ワイルドカードのバインドにできるのはなぜですか?
Javaでは、配列を型変数のバインドにできないのに、ワイルドカードのバインドにできるのはなぜですか?
あなたが持つことができます:
しかし、あなたは持つことができません:
なんで?
java - Javaでジェネリック型パラメータに下限を設定できないのはなぜですか?
Java ジェネリック型パラメーターを下限にバインドできない (つまり、super
キーワードを使用する) ことはできないと思います。私はAngelika Langer Generics FAQ がこの件に関して何を言わなければならなかったかを読んでいました. 彼らは、基本的に下限が役に立たない(「意味がない」)ことに帰着すると言います。
確信が持てません。型付きの結果を生成するライブラリ メソッドの呼び出し元に対して、より柔軟に対応できるようにするために、これらを使用することを想像できます。ユーザー指定のサイズの配列リストを作成し、空の文字列で埋めるメソッドを想像してください。簡単な宣言は次のようになります
しかし、それはクライアントを不必要に制限しています。なぜ彼らはあなたのメソッドを次のように呼び出せないのですか:
この時点で、次の定義を試してみたくなります。
しかし、それはコンパイルされません。このコンテキストでは、super
キーワードは不正です。
上記の例は悪い例ですか (以下で言うことを無視します)? ここで下限が役に立たないのはなぜですか? それが有用であるとすれば、Java で許可されていない本当の理由は何ですか?
PS
私は、より良い組織は次のようなものかもしれないことを知っています:
この質問の目的のために、要件により、1 つのメソッド呼び出しで両方の操作を行う必要があるふりをすることができますか?
編集
@Tom Gは(当然のことながら) a を使用すると a よりもどのような利点があるかを尋ねList<CharSequence>
ますList<String>
。1 つには、返されるリストが不変であると誰も言っていないので、ここに 1 つの利点があります。
java - Javaで文字列サイズを取得する(Graphicsオブジェクトを利用できない場合)
Graphics2D
Java のクラスを使用して多くの文字列を描画する必要があるアプリケーションを作成しようとしています。各 String オブジェクトのサイズを取得する必要があります (各文字列の正確な位置を計算するため)。paint()
メソッドが呼び出される前に実行する必要がある文字列が非常に多く、プログラムの最初に一度だけ実行する必要があります(そのため、Graphics2D
まだオブジェクトがありません)。メソッドがあることは知っていますが、パラメーターとしてオブジェクトFont.getStringBounds()
が必要です。FontRenderContext
独自のオブジェクトを作成しようとしたとき:
次に、内部のメソッドFontRenderContext
を使用して取得する場合とは常に異なるサイズを取得する文字列の境界を取得します。大きな違いはありませんが (約 1E-3)、なぜ違いがあるのでしょうか?Graphics2D.getFontRenderContext()
paint()
ただし、文字列のサイズを取得するためのより適切で安全な方法はありますか?
事前に助けてくれてありがとう!
wpf - 動的コンテンツに合わせてコントロールの境界を変更する簡単な方法は?
フレームごとに変更されるすべての動的コンテンツにちょうど合うように、コントロールの境界のサイズを変更したいと考えています。つまり、何らかの手段 (キャンバス、境界線など) を介してコントロールに境界ボックスを表示する場合、そのボックスにはすべての可視コンテンツが含まれている必要があります。可視コンテンツの左上隅は、ボックス。すべてがボックス内に含まれている必要があります。
内容はフレームごとに変化し、外部ソースからのパラメータに基づいてあちこちに描画されるという点で特別です。コントロールの現在の高さと幅を「自動」に設定しています。これは、すべてのコンテンツが確実に表示されるようにするのに適していますが、残念ながら、コントロールの左上隅の値は、すべての目に見える内容。
すべてのコンテンツを含むようにコントロールの境界を変更する簡単な方法はありますか? 上で述べたように、境界ボックスを表示した場合、そのボックスにはすべての可視コンテンツが含まれている必要があります。
android - JS Google Maps APIのようにAndroidで特定の境界の地図ズームレベルを取得する:map.getBoundsZoomLevel(bounds)
マーカーのグループを含む境界矩形を定義するクラスターマーカーがあります。クラスターには、境界を計算するための中心(lat、lon)、マーカーカウント、および緯度と経度のスパンがあります。
Google Maps API(JS)には「getBoundsZoomLevel(bounds)」という関数がありますが、Android用のGoogleMapsSDKで同等のメソッドが見つかりません。特定の境界のズームレベルをどのように推定できますか(特に、解像度/密度が異なるさまざまなデバイスで)?
ユーザーがクラスターマーカーに触れることができ、マップビューがそのクラスターの中心と境界の中央に配置されるように計画しました。
誰かが実用的なコードスニペットまたは私のためのいくつかの提案がありますか?
よろしくThorstenよろしくお願いします。
iphone - iPhoneの画面よりも大きいUIViewフレーム
XCodeで新しいiPhoneViewベースのプロジェクトを作成し、生成されたxibを名前で確認しましたmyAppViewController.xib
。そのxibでは、生成されたビューのフレームは次のようになります。{ x = 160, y = 230, w = 320, h = 460 }
このビューは、ステータスバーを除く画面全体に表示されることになっています。ビューのフレームは次のようになると思います。{ x = 0, y = 0, w = 240, y = 300 }
古いiPhoneの場合と{ x = 0, y = 0, w = 480, h = 600 }
、Retinaディスプレイの場合です。しかし、私は上記の奇妙な値を取得します。ここで何が起こっているのか説明してもらえますか?他のプロジェクトの描画コードの一部が台無しになっています(描画する領域はビューのフレームに基づいています)。
google-maps - Googleマップで都市のGLatLngBoundsを取得する方法
ユーザーが入力した都市をGoogleマップに表示する必要があります。私は都市が GClientGeocoder.getLatLng(address:String, callback:function) で問題ないと判断しましたが、都市が地図に収まるようにズームレベルを設定する必要もあります。
getBoundsZoomLevel(bounds:GLatLngBounds, viewSize:GSize) を見つけましたが、都市の境界:GLatLngBounds を取得する方法がわかりません。何か案は?
algorithm - 境界交差点
このような構造が与えられた場合Bounds
:
Bounds
2つのAとBがどのように交差するかを調べようとしています。考えられる結果は次のとおりです。
- AとBはまったく交差しません
- AとBは等しい
- AにはBが完全に含まれています
- BにはAが完全に含まれています
- AとBが交差している
私の最初の素朴な試みは、AのポイントがBにいくつあり、BのポイントがAにいくつあるかをテストすることですが、このテストはできるだけ速くする必要があり、おそらくもっと良い方法があります。 。
どうもありがとう !