スレッド: [becky-pin:02360] SetSpecifiedHeader 実行時のリストビュー表示更新方法?
スレッド
- 2360: ご教示いただきたいことがあり、投稿させていただきました。 (質問) SetSpecifiedHeader でFrom:の内 cxn03651‐at‐msj.biglobe.ne.jp
- └2361: cxn03651 さんの「[becky-pin:02360] SetSpecifiedHeader 実行時のリストビュー 表示更新方法?」より… わざ shinonon
- └2362: ここは mail.unselect # 選択解除する mail.select # 再び選択する のほうが「らしい」かな(超主観)。ま Tietew
- └2363: Tietew 様、shinonon 様 <- 中村 お世話になります。この世界でよくお名前を拝見する両巨匠からご 中村 英夫
- └2364: bka.SetSel(メールID, false) です。 -[ Tietew ]-------------------------- メ : tietew‐at‐tietew.net / tietew‐at‐raug.net / tiete Tietew
[becky-pin:02360] SetSpecifiedHeader 実行時のリストビュー表示更新方法?
- Subject:
- [becky-pin:02360] SetSpecifiedHeader 実行時のリストビュー表示更新方法?
- From:
- cxn03651‐at‐msj.biglobe.ne.jp <cxn03651@...>
- Date:
- Wed, 11 Sep 2002 12:38:18 +0900
- X-Mailer:
- Becky! ver. 2.05.05
- Message-Id:
- <20020911123733.768B.CXN03651‐at‐msj.biglobe.ne.jp>
はじめまして。中村と申します。
ご教示いただきたいことがあり、投稿させていただきました。
(質問)
SetSpecifiedHeader でFrom:の内容を書き換えた際に、ミドルバーの表示は変
更されるのですが、リストビューの表示が更新されません(一度別のメールを表
示して戻ると、今度はリストビューも新しい内容で表示されます。)
一度別のメールに移動することなく、自動的にリストビューの表示を更新する
方法はございませんでしょうか?
(参考:やっていること)
人から貰うメールは、From:やTo:の内容がアドレスだけだったりローマ字で名
前を書いていたりとバラバラです。一方、自分のアドレス帳には漢字で氏名を登
録しています。
表示形式を「名前<address>」としていますが、上記の場合、自分が送ったメー
ルと相手から貰ったメールでアドレスの表示が異なるため、一見違和感を感じま
す。
そこで、addressに合致するデータがアドレス帳に登録されていれば、自動的
にヘッダデータを名前<address>形式に置換してしまうプラグインを作成しまし
た。
ほとんどできたのですが、リストビューの表示更新のところがうまくいかず、
画竜点睛を欠いている状態です。
以上、よろしくお願いいたします。
中村 cxn03651@...
ご教示いただきたいことがあり、投稿させていただきました。
(質問)
SetSpecifiedHeader でFrom:の内容を書き換えた際に、ミドルバーの表示は変
更されるのですが、リストビューの表示が更新されません(一度別のメールを表
示して戻ると、今度はリストビューも新しい内容で表示されます。)
一度別のメールに移動することなく、自動的にリストビューの表示を更新する
方法はございませんでしょうか?
(参考:やっていること)
人から貰うメールは、From:やTo:の内容がアドレスだけだったりローマ字で名
前を書いていたりとバラバラです。一方、自分のアドレス帳には漢字で氏名を登
録しています。
表示形式を「名前<address>」としていますが、上記の場合、自分が送ったメー
ルと相手から貰ったメールでアドレスの表示が異なるため、一見違和感を感じま
す。
そこで、addressに合致するデータがアドレス帳に登録されていれば、自動的
にヘッダデータを名前<address>形式に置換してしまうプラグインを作成しまし
た。
ほとんどできたのですが、リストビューの表示更新のところがうまくいかず、
画竜点睛を欠いている状態です。
以上、よろしくお願いいたします。
中村 cxn03651@...
[becky-pin:02361] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?
しののんです。
cxn03651 さんの「[becky-pin:02360] SetSpecifiedHeader 実行時のリストビュー
表示更新方法?」より…
> 一度別のメールに移動することなく、自動的にリストビューの表示を更新する
> 方法はございませんでしょうか?
わざわざ別のメールに移動しなくても、リストビューから別の所にフォーカスを
移すか、現在選択しているメールを選択解除することでも、リストビューの表示
が更新されるようです。
beckrbで行ったテストソース
# Fromにaを増殖
Becky.set_current_mail_header("From", Becky.get_current_mail_header("From")+"a")
# 現在選択されているメールオブジェクトを取得
mail = Becky.current_mail
# 選択解除する
Becky.unselect_mail(mail)
# 再び選択する
Becky.select_mail(mail, true)
Becky APIだけでやるんでしたら、これが一番簡単でしょう。
Win32APIでも、hwndList に何らかのリフレッシュ系メッセージを投げれば、う
まく更新されるかもしれません。
▲▽《篠田 敦》 ▽▲
▲▽ Private mailto:shinonon@... ▽▲
▲▽ http://members.jcom.home.ne.jp/shinonon/ ▽▲
cxn03651 さんの「[becky-pin:02360] SetSpecifiedHeader 実行時のリストビュー
表示更新方法?」より…
> 一度別のメールに移動することなく、自動的にリストビューの表示を更新する
> 方法はございませんでしょうか?
わざわざ別のメールに移動しなくても、リストビューから別の所にフォーカスを
移すか、現在選択しているメールを選択解除することでも、リストビューの表示
が更新されるようです。
beckrbで行ったテストソース
# Fromにaを増殖
Becky.set_current_mail_header("From", Becky.get_current_mail_header("From")+"a")
# 現在選択されているメールオブジェクトを取得
mail = Becky.current_mail
# 選択解除する
Becky.unselect_mail(mail)
# 再び選択する
Becky.select_mail(mail, true)
Becky APIだけでやるんでしたら、これが一番簡単でしょう。
Win32APIでも、hwndList に何らかのリフレッシュ系メッセージを投げれば、う
まく更新されるかもしれません。
▲▽《篠田 敦》 ▽▲
▲▽ Private mailto:shinonon@... ▽▲
▲▽ http://members.jcom.home.ne.jp/shinonon/ ▽▲
[becky-pin:02362] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?
Tietew です。
On Wed, 11 Sep 2002 14:10:39 +0900
In article <20020911140839.8937.SHINONON@jcom.home.ne.jp>
[[becky-pin:02361] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?]
shinonon <shinonon@...> wrote:
> # 選択解除する
> Becky.unselect_mail(mail)
> # 再び選択する
> Becky.select_mail(mail, true)
ここは
mail.unselect # 選択解除する
mail.select # 再び選択する
のほうが「らしい」かな(超主観)。また,select_mail の最後の引数は
ほぼ省略して使うことを意図しているので定数で true って書くとなん
か変です。
> Becky APIだけでやるんでしたら、これが一番簡単でしょう。
> Win32APIでも、hwndList に何らかのリフレッシュ系メッセージを投げれば、う
> まく更新されるかもしれません。
InvalidateRect(hwndList, NULL);
UpdateWindow(hwndList);
で更新されるんじゃないかと。
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
On Wed, 11 Sep 2002 14:10:39 +0900
In article <20020911140839.8937.SHINONON@jcom.home.ne.jp>
[[becky-pin:02361] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?]
shinonon <shinonon@...> wrote:
> # 選択解除する
> Becky.unselect_mail(mail)
> # 再び選択する
> Becky.select_mail(mail, true)
ここは
mail.unselect # 選択解除する
mail.select # 再び選択する
のほうが「らしい」かな(超主観)。また,select_mail の最後の引数は
ほぼ省略して使うことを意図しているので定数で true って書くとなん
か変です。
> Becky APIだけでやるんでしたら、これが一番簡単でしょう。
> Win32APIでも、hwndList に何らかのリフレッシュ系メッセージを投げれば、う
> まく更新されるかもしれません。
InvalidateRect(hwndList, NULL);
UpdateWindow(hwndList);
で更新されるんじゃないかと。
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
[becky-pin:02363] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?
Tietew 様、shinonon 様 <- 中村
お世話になります。この世界でよくお名前を拝見する両巨匠からご教示いただ
き恐縮です。
午後はずっと席を外していたので、今やってみました。
> InvalidateRect(hwndList, NULL);
> UpdateWindow(hwndList);
>
> で更新されるんじゃないかと。
を試してみたところ、見事更新されました。実際は、B2PinSDK-Delphiを使って
いるので、InvalidateRectの呼び出しは
InvalidateRect(hList, NIL, false);
としましたが。
> > # 選択解除する
> > # 再び選択する
の方法については、選択解除するというBeckyAPIがわからなかったので、試して
いません。せっかくお教えいただいたのにすみません。
ともあれ、これで完成しました。どうもありがとうございました。
中村 cxn03651@...
お世話になります。この世界でよくお名前を拝見する両巨匠からご教示いただ
き恐縮です。
午後はずっと席を外していたので、今やってみました。
> InvalidateRect(hwndList, NULL);
> UpdateWindow(hwndList);
>
> で更新されるんじゃないかと。
を試してみたところ、見事更新されました。実際は、B2PinSDK-Delphiを使って
いるので、InvalidateRectの呼び出しは
InvalidateRect(hList, NIL, false);
としましたが。
> > # 選択解除する
> > # 再び選択する
の方法については、選択解除するというBeckyAPIがわからなかったので、試して
いません。せっかくお教えいただいたのにすみません。
ともあれ、これで完成しました。どうもありがとうございました。
中村 cxn03651@...
[becky-pin:02364] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?
Tietew です。
On Wed, 11 Sep 2002 18:59:25 +0900
In article <20020911185908.EF5F.CXN03651@msj.biglobe.ne.jp>
[[becky-pin:02363] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?]
中村 英夫 <cxn03651@...> wrote:
> の方法については、選択解除するというBeckyAPIがわからなかったので、試して
> いません。せっかくお教えいただいたのにすみません。
bka.SetSel(メールID, false) です。
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA
On Wed, 11 Sep 2002 18:59:25 +0900
In article <20020911185908.EF5F.CXN03651@msj.biglobe.ne.jp>
[[becky-pin:02363] Re: SetSpecifiedHeader 実行時のリストビュー表示更新方法?]
中村 英夫 <cxn03651@...> wrote:
> の方法については、選択解除するというBeckyAPIがわからなかったので、試して
> いません。せっかくお教えいただいたのにすみません。
bka.SetSel(メールID, false) です。
—[ Tietew ]——————————————————————————
メ : tietew@... / tietew@... / tietew@...
ホペ: http://www.tietew.net/ Tietew Windows Lab.
http://www.masuclub.net/ 鱒倶楽部
指紋: 26CB 71BB B595 09C4 0153 81C4 773C 963A D51B 8CAA