visual studio espress sdition 2008 C#で、ブラウザを作ろうとしていますが、お気に入りを表示させるにはどうすればよいでしょうか?
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

「お気に入りを表示させる」とはどういう動作の事を言っているのかイメージできない。



IE のお気に入りであれば
Environment.GetFolderPath(Environment.SpecialFolder.Favorites) でお気に入りフォルダのパスを取得できる。
お気に入りの中身はフォルダとテキスト ファイル(URL へのショートカット)なので、後はフォルダとファイルの存在を再帰的に探してツリービューなどで視覚化すれば良いと思う。

ページを表示するには URL へのショートカット ファイルを開いて URL を取得し、WebBrowser コントロールに与えてあげる。

と勝手に解釈。
    • good
    • 0
この回答へのお礼

ありがとうございます。
頭の回転が悪いもので、できればもう少しお願いします。
お気に入りフォルダのパスを取得した後、ツリービューで表示させるにはどうしたらよいのでしょうか?

お礼日時:2009/05/16 22:32

> お気に入りフォルダのパスを取得した後、ツリービューで表示させるにはどうしたらよいのでしょうか?



そういった所は本や Web を調べたほうがすぐに見つかります。
http://www.google.com/search?hl=ja&lr=lang_ja&ie …

もっと直接的なコンテンツで言えば、ちょっと探せばこんなのも出てきました。
http://note.phyllo.net/?eid=540651
http://www.google.com/search?hl=ja&lr=lang_ja&ie …

頑張ってください。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qマウスポインタの画像を変更したい

Visual C++ 2010 express でプログラム開発している初心者です。

通常のマウスポインタである矢印を、ボタン等のクリックイベントで

自分の好きな画像に変更したいと思います。

curファイルにしなくてはいけないことは、わかりましたがそのファイルをどのように

プログラム上で、すればいいのでしょうか?

ネット検索しましたが、見つかりませんのでよろしくお願いします。

Aベストアンサー

>したがって、好きなボタンをクリックした時に選んだ種類によりマウスポインタを変更し
>マウスポインタを自由に動かし、好きな位置で再度クリックした時に、その場所に
>その種類を表示させ、マウスポインタを通常に戻す必要があります。
>イメージファイルは、curファイルにすることはできます。
>ボタンクリックで変更したりが可能な方法が知りたいのです。

コントロールの上にカーソル乗っかったらどうなるのか?
とか、まぁいろいろ考慮する必要はあるかと思いますが……。

VS2010EEでWin32プロジェクトのスケルトンをいぢってみました。
カーソルファイルは適当に。
# 当たり前ですがちゃんとファイルアクセスできるように。

WndProc()にstatic変数を用意。
# 他の方法でもかまいません。任意の期間寿命が保証される変数であればよい。
 static HCURSOR hCursor[2];

WM_CREATEでカーソル読み込み。
 case WM_CREATE:
  hCursor[0] = LoadCursor(NULL, IDC_ARROW);
  hCursor[1] = LoadCursorFromFile(_T("ドラゴンの手.Cur"));
  break;

ボタン押下の代わりのイベントとしてメニュー操作を書き換え。
# ここでウィンドウクラスに登録されたカーソルを変更。
  case IDM_EXIT:
   //DestroyWindow(hWnd);
   SetClassLong(hWnd, GCL_HCURSOR, (LONG)hCursor[1]);
   break;

左クリック時にカーソルを戻すように追加。
 case WM_LBUTTONDOWN:
  SetClassLong(hWnd, GCL_HCURSOR, (LONG)hCursor[0]);
  break;

ウィンドウクラスを変更しているので、「クライアント領域内」でしか有効ではありません。
他のコントロールや子ウィンドウの上に移動するとそのウィンドウクラスに設定されたカーソルに戻るでしょう。
また、戻すための契機として左クリックを設定していますが、これも「クライアント領域で」左クリックした場合のみになります。
他の子ウィンドウなどの場合は通知が来ないでしょうからよろしく処理してください。


想定しているボタンをクリックした後にマウスキャプチャーを設定したり移動可能な範囲を制限した上でシステムカーソルを変更する。という方法もあるでしょう。


大本の質問の
「curファイルにしなくてはいけないことは、わかりましたがそのファイルをどのように」については、APIで読み込むのもヨシ、実行ファイルのリソースとして登録してLoadCursor()で読み込むもヨシ、自由に使ってください。
# リソースから読み込む方法はキーワード検索すれば出てくるでしょう。
# もっともExpressEditionにはリソースエディタがありませんから実行ファイルのリソースにするにはちょっと面倒かも知れませんが。

>したがって、好きなボタンをクリックした時に選んだ種類によりマウスポインタを変更し
>マウスポインタを自由に動かし、好きな位置で再度クリックした時に、その場所に
>その種類を表示させ、マウスポインタを通常に戻す必要があります。
>イメージファイルは、curファイルにすることはできます。
>ボタンクリックで変更したりが可能な方法が知りたいのです。

コントロールの上にカーソル乗っかったらどうなるのか?
とか、まぁいろいろ考慮する必要はあるかと思いますが……。

VS2010EEでWin32プロジェクトのス...続きを読む

Qマウス位置の色を得る

マウス位置は lParam にあるらしいから

 typedef struct tagPOINT {
  LONG x_zahyo_long;
  LONG y_zahyo_long;
 }POINT;

 POINT p;

 char x_zahyo[5], y_zahyo[5];

として、

 case WM_RBUTTONDOWN:

  p.x_zahyo_long = LOWORD(lParam);
  p.y_zahyo_long = HIWORD(lParam);

  sprintf(x_zahyo,"%04d", p.x_zahyo_long);
  sprintf(y_zahyo,"%04d", p.y_zahyo_long);

  SetWindowText(hrs, x_zahyo);
  SetWindowText(hrs, y_zahyo);

 break;

でやってたけど、得られた座標は常に 0001,0001 でした。
本題とは別だけど、4桁表示のやり方で、もっといいソースがあったら
教えてください。
bcc32 では lParam からマウス位置取得は無理ですか?


lParam が使えなかったから、

 POINT p = { 0,0 };

として、

 GetCursorPos( &p );

で座標を得ました。

それで、ウインドウ上のマウスの位置の色を取得するにはどうしたら
いいんですか?
getPixel( ) の引数やソースの書式を教えてほしいです。

マウス位置は lParam にあるらしいから

 typedef struct tagPOINT {
  LONG x_zahyo_long;
  LONG y_zahyo_long;
 }POINT;

 POINT p;

 char x_zahyo[5], y_zahyo[5];

として、

 case WM_RBUTTONDOWN:

  p.x_zahyo_long = LOWORD(lParam);
  p.y_zahyo_long = HIWORD(lParam);

  sprintf(x_zahyo,"%04d", p.x_zahyo_long);
  sprintf(y_zahyo,"%04d", p.y_zahyo_long);

  SetWindowText(hrs, x_zahyo);
  SetWindowText(hrs, y_zahyo);

 break;

でやっ...続きを読む

Aベストアンサー

WinAPIに徹するなら、
GetPixel()が妥当かなと。

COLERREF GetPixel(HDC 色を得たい座標のHDC, int X座標, int Y座標);

クリックするなら相手先のウィンドウはアクティブのはずなので、
COLORREF color;
HDC hdc = GetDC(GetActiveWindow());
color = GetPixel( hdc, LOWORD(lParam), HIWORD(lParam));
ReleaseDC(GetActiveWindow(), hdc);
でいけるんじゃないかと思います。

確認してないのでアヤシイですが。
「回答に対する自信」はホントの所「全くなし」です。

QC#にて別クラスの関数を使いたい

C#にて、別クラスの関数を使用する方法を教えてほしいです。

下記のような、構造体を受け取るメソッドを作りました。

*****************************
private struct MyPoint
{
public int x;
public int y;
}

private void proc1(MyPoint pt)
{
MessageBox.Show("座標:" ; pt.x + "," + pt.y + "実行結果");
}

private void button1_Click(object sender ,System.EventArgs e)
{

MyPoint pt;
pt.x = 10;
pt.y = 20;
proc(pt);
}
*****************************

別のフォームのクラスから、proc1を呼び出したいのですが、やり方がわかりません。
どうか、教えてください。

Aベストアンサー

同じ定義をしたとしても別の名前空間に書いた構造体は同一とはみなされません。

呼び出し先クラスでの構造体を private では無く、public で宣言して下さい。

呼び出し元では、

MyClass.MyPoint pt;

のようにして実体を作ります。

QC#「オブジェクト参照が必要です」(初心者)

Visual C# 2008を学習中なんですが、とりあえず何か作ってみようと思って、パラパラマンガに挑戦してみました。
Form1にpictureBox1を作り、waitを入れてイメージを書き換えるという単純なものです。
ところが実行しようと思ったら、「静的でないフィールド、メソッド、またはプロパティ’WindowsFormApplication1.Form1.pictureBox1’でオブジェクト参照が必要です」というエラーが出ます。その際のフォーカスは、main()内の
Form1.pictureBox1.image = Image.FromFile("motion1.png");
”Form1.pictureBox1”に当てられています。

何が原因と考えられるでしょうか。
もし情報不足であればご指摘いただくか、あるいはこの目的においてやらなければいけないこと、を大雑把に教えていただくだけでも幸いです。
よろしくお願いします。

Aベストアンサー

main()内に記述されているとのことですので、たぶん、
Form1.pictureBox1.Image=Image.FromFile("motion1.png");
Application.Run(new Form1());
と書いているのではないでしょうか?

連載 改訂版 C#入門 第3章 クラスとインスタンス
http://www.atmarkit.co.jp/fdotnet/csharp_abc2/csabc2_003/cs2_003_01.html#cs0302

ここであるように、オブジェクト指向にはクラスとインスタンスという概念があります。
今のコードでは、Form1クラスを操作しようとしているのでそのようなエラーが出ます。

具体的な解決方法としては、PictureBoxに初期画像を設定する処理をForm1のコンストラクタでやるのがいいと思います。
その際、redfox63さんがおっしゃられるように
this.pictureBox1
と記述することが必要です。(thisは自分自身のインスタンスを指します)

後は、Windowsフォームで一定間隔での処理をするための「Timerコンポーネント」について調べてみたらいいと思います。

タイマにより一定時間間隔で処理を行うには?(Windowsタイマ編)
http://www.atmarkit.co.jp/fdotnet/dotnettips/372formstimer/formstimer.html

MSDNライブラリ Timerクラス
http://msdn.microsoft.com/ja-jp/library/system.windows.forms.timer.aspx

参考URL:http://www.atmarkit.co.jp/fdotnet/csharp_abc2/index/

main()内に記述されているとのことですので、たぶん、
Form1.pictureBox1.Image=Image.FromFile("motion1.png");
Application.Run(new Form1());
と書いているのではないでしょうか?

連載 改訂版 C#入門 第3章 クラスとインスタンス
http://www.atmarkit.co.jp/fdotnet/csharp_abc2/csabc2_003/cs2_003_01.html#cs0302

ここであるように、オブジェクト指向にはクラスとインスタンスという概念があります。
今のコードでは、Form1クラスを操作しようとしているのでそのようなエラーが出ます。

具...続きを読む

Qequalsの逆

javaで、文字列の場合は比較演算子の「==」は用いずに

if ((str1.getText()).equals(str2)){
(※…str1,2は文字列)

と書きますよね?
この逆で、文字列str1とstr2は等しくないとき、にはif以下の条件文をどのように書けばよいでしょうか?

Aベストアンサー

>if !((str1.getText()).equals(str2)){

あくまで
if(){
}


!(str1.getText()).equals(str2)
が入っているので
if !((str1.getText()).equals(str2)){
じゃなくて
if (!(str1.getText()).equals(str2)){
こう。

Qmainメソッドのthrows節で設定した例外はどこでcatchされる

mainメソッドのthrows節で設定した例外はどこでcatchされる?

java初心者です。

例えば、mainメソッドの中でAというメソッドが呼ばれるとします。
そのAについての宣言文(定義文)にthrows節が書かれているような場合、
mainメソッド内で、Aを呼び出す際、Aの実行の中で、もし例外が発生した場合には、
mainでその例外をキャッチして処理するよう、mainの記述を行う必要があるかと思います。

では、mainメソッド自体に設定したthrows節(つまり、
public static void main(String[] args) throws TestException{ ~略~ } という宣言)
については、
その例外(ここでは、TestException)は、どこでcatchすることになるのでしょうか?

もしや、「投げっぱなし」ということなのでしょうか?

mainメソッド自体は、基本的に他のメソッドから呼ばれるものではないかと思うので、
mainメソッドでスローした例外の受け取り場所がわからなくて質問させていただきました。

色々調べたつもりなのですが、よくわからなくて困ってしまいました。
あまりに初歩すぎて、どこにも書かれていないのかなんなのか、
その説明が見当たらないこと自体にも、疑問を感じている次第です。苦笑

以上、どなたか、宜しくお願い致します。

mainメソッドのthrows節で設定した例外はどこでcatchされる?

java初心者です。

例えば、mainメソッドの中でAというメソッドが呼ばれるとします。
そのAについての宣言文(定義文)にthrows節が書かれているような場合、
mainメソッド内で、Aを呼び出す際、Aの実行の中で、もし例外が発生した場合には、
mainでその例外をキャッチして処理するよう、mainの記述を行う必要があるかと思います。

では、mainメソッド自体に設定したthrows節(つまり、
public static void main(String[] args) throws TestExceptio...続きを読む

Aベストアンサー

そのもしやの「投げっぱなし」です。mainメソッドの場合に限らず、throwされた例外をcatchするメソッドがない場合には標準エラー出力にその例外を表示して、該当スレッドの実行はそこで終了です。

public class QA6049493 {
public static void main(String[] args) throws Exception {
throw new Exception("from main");
}
}

>java QA6049493
Exception in thread "main" java.lang.Exception: from main
at QA6049493.main(QA6049493.java:3)

QC# リストビューの値を取得

foreach (ListViewItem item in ListView1.SelectedItems)
{
MessageBox.Show(item.Text);
}

上記の書き方だと1カラム目しか取得できないのですが、これを2カラム目3カラム目と順番に表示するにはどうしたらよいでしょうか?

Aベストアンサー

foreach (ListViewItem item in ListView1.SelectedItems)
foreach (ListViewItem.ListViewSubItem subItem in item.SubItems)
{
MessageBox.Show(subItem.Text);
}
}

かな? .NET はよく知らないけど。


人気Q&Aランキング

おすすめ情報