- ベストアンサー
SashFormの子の変更
- SWTでGUIプログラミングを行っている場合、SashFormのある分割ウィンドウ内のコントロールを別のコントロールに変更する方法を教えてください。
- 現在考えている方法は、SashFormに配置されたコントロールを取得して、新しいSashFormに要素を追加するというものです。
- しかし、この方法では再帰的にすべてのSashFormに対して同じ作業を行う必要があります。より効率的な方法はありますか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- 再帰的にデータを取得する方法について
再帰的にデータを取得する方法について質問させて下さい。 以下のような「TABLE1」と「TABLE2」があった場合に、 TABLE1 ------------------------ | ID | AID | JOB | ------------------------ | 1| 10| XXXXX| ------------------------ TABLE2 ------------------------- | ID | PID | NAME | ------------------------- | 10| 100| aaa| | 100| 1000| bbb| | 1000| 10000| ccc| -------------------------- 再帰的に取得したい親階層が2つまで等分かっている場合に、以下のような結果を1度のSQLで取る事は可能でしょうか? ---------------------------------------------------------------------- |ID|AID|JOB |AID_NAME|AID_PID_1|AID_PID_NAME_1|AID_PID_2|AID_NAME_2| ---------------------------------------------------------------------- |1| 10|HIRA | aaa| 100| bbb| 1000| ccc| ---------------------------------------------------------------------- また、上記の結果が取得可能な場合にパフォーマンス的には1度で取得した方が良いのでしょうか? それともTABLE2の親階層を再帰的に取得するSQLは分割した方が良いのでしょうか? どうかご教授のほどお願い致します。
- ベストアンサー
- Oracle
- コンポジットパターンで作成した最上位のコンポーネントからiterateで表示する方法
コンポジットパターンを使用してエクスプローラーのツリー構造を作成しています。 最上位のコンポーネントには、ディレクトリやファイルデータがはいっています。 System.out.prinlnでコンソールでは出力できるのですが、JSPで最上位→1階層目→2階層目と出力 するには、どのようにして、1階層目とか、判断していけばよいのでしょうか。 現状では、ひとつしかでません。 コンポジットパターンを使用して再帰的な処理というのは理解できるのですが、取得する方法など、 どのように考えればよいでしょうか? SWINGではなく新規でエクスプローラー画面を作ることになりつまっています。
- 締切済み
- Java
- Linux(初心者):ファイルをPCのデスクトップにダウンロードしたい。
サーバ初心者です。安価なレンタル専用サーバでいろいろ練習中です。 WADAX専用サーバ エントリープラン GUIソフト:PLESK使用 Red Hat Enterprise Linux 5 PHP 5.1 MySQL 5.0 ftpソフトでアクセスできるディレクトリよりも上位階層にあるディレクトリのファイル(及びフォルダ)をSSH(putty)を利用してローカルコン ピュータ(Windows XP)のデスクトップにダウンロードする方法(コマンド等)を教えて下さい。 やはり、ファイル(及びフォルダ)がftpソフトでアクセスできるディレクトリよりも上位階層にある場合、それらをftpソフトでアクセスできるディレク トリに移動してから、ftpソフトでダウンロードするのが一番良いやり方なのでしょうか?現在、これにかなり手間がかかっています。 よろしくお願いします。
- 締切済み
- Linux系OS
- SWTで動的にコントロールを追加する方法
いつもお世話になります。 SWTを使用してクライアントアプリケーションを作成しているのですが、動的にコントロールを作成する方法を教えて頂けませんでしょうか。 例えばあるボタンを押下したタイミングでTextのコントロールを追加したい場合、単純にCompositeにTextを作成しただけだと、何も変化がないのですが、ウィンドウのサイズを変更すると、その変更が反映されているのは確認できています。 コントロール追加した後、updateやredrawなどを試しても見ても変わらずでした。 宜しくお願いします。
- ベストアンサー
- Java
- SWTです。ボタンの処理の記述の仕方がわかりません
現在SWTにて簡単なGUIの作成を行っています。 流れとしては、mainにてシェルを作ってボタンが押された場合、テキストボックスに入力された値を計算して返す、というものです。 public static void main(String[] args) { Display display = new Display (); Shell shell = new Shell(display); shell.setLayout(new GridLayout(1,true)); shell.setText("集計"); shell.setSize(250, 200); Label label1 = new Label(shell,SWT.NULL); label1.setText("値1"); Text text1 = new Text(shell,SWT.SINGLE|SWT.BORDER); GridData gridData1 = new GridData(); gridData1.horizontalAlignment = GridData.FILL; gridData1.grabExcessHorizontalSpace = true; text1.setLayoutData(gridData1); Label label2 = new Label(shell,SWT.NULL); label2.setText("値2"); Text text2 = new Text(shell,SWT.SINGLE|SWT.BORDER); GridData gridData2 = new GridData(); gridData2.horizontalAlignment = GridData.FILL; gridData2.grabExcessHorizontalSpace = true; text2.setLayoutData(gridData2); Label label3 = new Label(shell,SWT.NULL); label3.setText("値3"); Text text3 = new Text(shell,SWT.SINGLE|SWT.BORDER); GridData gridData3 = new GridData(); gridData3.horizontalAlignment = GridData.FILL; gridData3.grabExcessHorizontalSpace = true; text3.setLayoutData(gridData3); Button button1 = new Button(shell,SWT.NULL); button1.setText("集計"); shell.open(); while (!shell.isDisposed ()){ if (!display.readAndDispatch ()){ display.sleep (); } } display.dispose (); } ここで、調べたところ、ボタンが押された場合の処理としてaddSelectionListenerを定義すると良い、というのもわかりました。 button1.addSelectionListener(new SelectionListener() { public void widgetDefaultSelected(SelectionEvent e) { System.out.println("widgetDefaultSelected"); } public void widgetSelected(SelectionEvent e) { keisan(値1, 値2, 値3); } }); ここで、このaddSelectionListener内で上記テキストボックスtext1~3の値をkeisanメソッドに渡したいのですが、どうしても 「異なるメソッドで定義されたインナー・クラス内で非 final 変数 text1 を参照できません」 とエラーが出てしまいます。 addSelectionListener内でテキストボックスに入力された値を使うにはどうすれば良いのでしょうか。
- ベストアンサー
- Java
- XMLをJSPで再帰処理を使って処理する方法について
たびたびすみません、XMLの処理をする上でやり方がわからなくなって しまったので、教えていただきたいのですが。。。 XMLのルートノード以下のものを取得する場合、階層がはっきりしてないとき などは、再帰処理をつかってノードを取得するようにしたいと思っているんですが、JSPでの再帰処理がなかなかうまくできないんです。 再帰処理を行うクラスのメソッドが例えば、 public boolean scanEach(NodeList agNode) { try{ for(int nCnt=0;nCnt<agNode.getLength();nCnt++) { node = agNode.item(nCnt) ; if(node.getNodeType() == Node.ELEMENT_NODE){ out.println("『 "+ node.getNodeName() +"』<br>") ; } if(node.hasChildNodes()) blScanEach(node.getChildNodes()) ; } } catch(Exception except) { except.printStackTrace() ; return false ; } return true ; } と要素ノードを取り出すメソッドがあったら、out.printlnの部分が JSP内での宣言じゃないのでエラーになってしまいます。 JSPで取り出して表示できるようにしたいのですが、なにかいい方法が ないか、教えていただけないでしょうか。 再帰処理を使わなくても、例えばどの階層にあるかわからない<タグ>タグを 検索したりする方法が他にあったら、その方法もおしえていただけると ありがたいのですが。。 何度も申し訳ありません。よろしくお願いします。
- ベストアンサー
- XML
- イラストレーターCS5の初期設定について
Mac OS は、10.8.3 です。イラストレーター CS5で画像配置をして、続けて次の画像を配置しようとすると、最初に配置したフォルダ(階層)と全く違うデスクトップや書類の階層に戻ってしまい、そこからまた階層を移動して指定しなければなりません。このような症状の場合に、どこを確認すればいいのかを教えていただけますか。(例:デスクトップ/リーフレット/○○商会様/写真/01.psdで配置した後に、次の画像を配置しようとすると、デスクトップに戻ってしまい、またそこから目的の階層までいかなくてはなりません) 「初期設定が壊れているのではと、言われたのですが、その方もそれがどこにあるかが分からないようなので質問させていただきました。CSになってから、全くその辺を意識せずに使っておりましたので、どこに納められているのかも分からない状態です。 ライブラリ/Application Support かとも思うのですが、どれが何をさしているのかが日本語表記では無いことや、開くと見たことも無い表示が出てくるので、情けないのですが、諦めてしまいました。 また、以前のイラストレーター8などであった初期設定(イラストレーターを立ち上げると最初から例えばA4縦、定規を表示で新規の書類が開くなどの自分用設定)は、設定方法があるのでしょうか。 よろしくお願いいたします。
- ベストアンサー
- Mac
- Illustrator10 配置画像の拡大縮小率の変更
Illustrator10に配置した画像があります。 Illustrator上でクリッピングマスクでトリミングがしてあります。 この配置された画像を、「置き換え」で別の画像に差し替えると、もともとの拡大・縮小率は、そのまま受け継がれてしまいますよね。 これを変更するにはどのようにしたらよろしいのでしょうか? 例えば、130%でもともと配置してある画像を別の画像で置き換えた場合に、100%にしたいという場合です。 「数値で計算する」は無しで、何か方法はありますか? もういちどマスク作成からやらなければだめでしょうか…?
- 締切済み
- CAD・DTP
- サブレンジ分割されたNDB(富士通)のアクセス方法を教えてください。
NDBが良くわかりません。 マニュアルで手がかりを探していますが、うまくいかないのでご存知の方がいらっしゃったら、教えてください。 ある規則性にしたがってN個にサブレンジ分割されたNDBがあります。サブレンジごとに10多重で処理を行いたいのですが、この場合のコーディングと基本的な考え方を教えてください。 1)サブレンジ分割の定義をしたNDBに対し、多重なしで全件読みは可能なのでしょうか? 2)サブレンジごとの処理を行いたい場合のコーディングはどのように行えばよいでしょうか? ○第1階層のレコードを1件読む。 この場合は GET FIRST ’レコード名’になるはずですが、このコーディングだけで、第1階層の最初のレコードをアクセスできるんでしょうか? 10個にサブレンジ分割していますが、どのサブレンジかはどうやって決まるのでしょう・・・・? ○第2階層を読む。 この場合は GET NEXT ’第2階層レコード名’ WITHIN ’SET名’ で良いのでしょうか? この時点で、 GET NEXT ’第2階層レコード名’ WITHIN ’サブレンジ名’ SUBRANGE というアクセス方法があるようなのですが、なにが違うのでしょう・・・? どうかよろしくお願いします。
- 締切済み
- その他(プログラミング・開発)
- ツリーコントロールとツリー構造のデータとのリンク
ツリーコントロールとツリー構造のデータとのリンク 私が開発しているソフトウェアは、データ構造として ツリー構造を使っています。このツリー構造のデータ を表示するためにツリーコントロールを使って いますが、データとツリーコントロールのリンクする 方法として良い方法を探しています。 ここでいう「リンク」とは、例えば ツリー構造のデータにデータの追加や削除が おこなわれた場合、該当するツリーコントロールの データも追加と削除をおこなう。ことです。 現時点では、ツリー構造のデータにデータの追加や 削除がおこなわれたら、ツリーコントロールに SendMessageを送ってツリーコントロール側の データの追加や削除をおこなっています。この場合、 ツリー構造のデータのクラスに、GUIのクラスの ポインタを保持しています(ツリーコントロール へのSendMessageのためにCWnd*を保持している)。 データにGUIに関わるコードが存在するので、 GUIに依存しない方法に変えたいのですが、みなさんは このような場合はどうしていますか? ちなみに現時点では、Design PatternのObserver Patternを採用してみようと思っています。 他に良い方法があれば教えてください。 よろしくお願いします。 開発環境:VC++6.0, MFC
- ベストアンサー
- C・C++・C#