![]() |
How to add icon(or picture) field for each contact in contacts view
Hello
Here what's I want to do. (outlook 2007) First,Outlook-Contacts Folder-Current view =Address Cards ,then I want to add a icon or picture into each contact item in Contacts Cards View.Normally, we can add a User-defined fields via customize current view,while the field type can not be a picture. So,I trying to get the contact item handle in the Card View to find some threads. The window class type of the Card View is "rctrl_renwnd32",while I cann't get the its child control in it. Is there any way to get all the items in the address(business) cards view? thanks squall -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...ddins/200907/1 |
How to add icon(or picture) field for each contact in contacts view
I'm not clear on what you want. Do you want to add a picture to the picture
field of each contact item, or do you want to add a custom field that has a picture in it. For the first you'd use the ContactItem.AddPicture() method and supply the image file path in that method. The second is not possible. It's not possible to find what items are visible in a specific view. You'd need to get the Items collection for the folder and deal with every item in the folder. That Windows class name applies to any Outlook window (except for WordMail windows). It won't help you at all. -- Ken Slovak [MVP - Outlook] http://www.slovaktech.com Author: Professional Programming Outlook 2007. Reminder Manager, Extended Reminders, Attachment Options. http://www.slovaktech.com/products.htm "squallcpp via OfficeKB.com" u53180@uwe wrote in message news:98fe281003073@uwe... Hello Here what's I want to do. (outlook 2007) First,Outlook-Contacts Folder-Current view =Address Cards ,then I want to add a icon or picture into each contact item in Contacts Cards View.Normally, we can add a User-defined fields via customize current view,while the field type can not be a picture. So,I trying to get the contact item handle in the Card View to find some threads. The window class type of the Card View is "rctrl_renwnd32",while I cann't get the its child control in it. Is there any way to get all the items in the address(business) cards view? thanks squall -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...ddins/200907/1 |
How to add icon(or picture) field for each contact in contacts view
Thanks for your replying.
The second is what I am want to do. Here are the detail ideas. 1,Add a status icon just next the mail sender or (receiver).when you open a mail item,user can see the contact presence 2, Add a custom field that has a picture in it for each contact item in a specific view. For the point one,I can insert a picture object via the interface InsertObject of IRichEditOle. while the point two,I cann't get and manipulate contact item in card view mode. besides,I listen the OnSelectionChange of interface ExplorerEvents, the Outlook::Selection objects are Outlook::_ContactItem,while I want get the HWND or something can manipulate its drawing. Thanks for any suggestions. squall Ken Slovak - [MVP - Outlook] wrote: I'm not clear on what you want. Do you want to add a picture to the picture field of each contact item, or do you want to add a custom field that has a picture in it. For the first you'd use the ContactItem.AddPicture() method and supply the image file path in that method. The second is not possible. It's not possible to find what items are visible in a specific view. You'd need to get the Items collection for the folder and deal with every item in the folder. That Windows class name applies to any Outlook window (except for WordMail windows). It won't help you at all. Hello [quoted text clipped - 16 lines] thanks squall -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...ddins/200907/1 |
How to add icon(or picture) field for each contact in contacts view
The main Outlook window will have a caption such as "Inbox - Microsoft
Outlook" and a class name of "rctrl_renwnd32". You can use FindWindow() to get the hWnd for that window, and FindWindowEx() to locate the child windows under that. Spy++ will be your friend there. Explorer.Caption will get you the window caption. Any icons you add to the folder view or individual items will need to overlay your icons to the child windows but in most cases you can't get below the supergrid or other control that's displaying everything to drill down to the individual items and their locations on the screen. That's something you're going to have to work out on your own. The view cannot be queried as to what items it's showing. The Items collection of the folder includes everything, whether or not it's shown in the view. Selection only gives you a collection of what's selected, not everything being viewed. You'd have to grab the view filter and use that to restrict the Items collection of the folder to approximate what's shown in the view. Unfortunately the View.Filter property was added to the object model in Outlook 2007 and isn't there in Outlook 2003 or earlier. The filter (if there is one) for the view will be in DASL format using SQL syntax. For Outlook 2003 or earlier you'd need to get the hidden item in the folder that has a MessageClass of "IPM.Microsoft.FolderDesign.NamedView" and iterate each such hidden item to find the one for the current view. Then you'd need to find and decode the undocumented filter properties. Of course depending on how the view is set up it could also be located in either the hidden Views or Common Views folders too. -- Ken Slovak [MVP - Outlook] http://www.slovaktech.com Author: Professional Programming Outlook 2007. Reminder Manager, Extended Reminders, Attachment Options. http://www.slovaktech.com/products.htm "squallcpp via OfficeKB.com" u53180@uwe wrote in message news:990ac8ec45f8c@uwe... Thanks for your replying. The second is what I am want to do. Here are the detail ideas. 1,Add a status icon just next the mail sender or (receiver).when you open a mail item,user can see the contact presence 2, Add a custom field that has a picture in it for each contact item in a specific view. For the point one,I can insert a picture object via the interface InsertObject of IRichEditOle. while the point two,I cann't get and manipulate contact item in card view mode. besides,I listen the OnSelectionChange of interface ExplorerEvents, the Outlook::Selection objects are Outlook::_ContactItem,while I want get the HWND or something can manipulate its drawing. Thanks for any suggestions. squall |
How to add icon(or picture) field for each contact in contacts view
..
Hi,Ken Thanks a lot for your suggestions. this requirement is a little bit crazy,I am trying to find out which contacts are showing in the current view window. the last solution I can used is to hook the ExtTextOut API of gdi32.dll For this feature,I remembered that the Plaxo for Outlook has implemented it, I cann't find the picture now.Its add-in just add the image just nest the contact display name .you can find the picture he http://blog.plaxo.com/archives/2006/..._soon_pla.html Thanks. Tiger Ken Slovak - [MVP - Outlook] wrote: The main Outlook window will have a caption such as "Inbox - Microsoft Outlook" and a class name of "rctrl_renwnd32". You can use FindWindow() to get the hWnd for that window, and FindWindowEx() to locate the child windows under that. Spy++ will be your friend there. Explorer.Caption will get you the window caption. Any icons you add to the folder view or individual items will need to overlay your icons to the child windows but in most cases you can't get below the supergrid or other control that's displaying everything to drill down to the individual items and their locations on the screen. That's something you're going to have to work out on your own. The view cannot be queried as to what items it's showing. The Items collection of the folder includes everything, whether or not it's shown in the view. Selection only gives you a collection of what's selected, not everything being viewed. You'd have to grab the view filter and use that to restrict the Items collection of the folder to approximate what's shown in the view. Unfortunately the View.Filter property was added to the object model in Outlook 2007 and isn't there in Outlook 2003 or earlier. The filter (if there is one) for the view will be in DASL format using SQL syntax. For Outlook 2003 or earlier you'd need to get the hidden item in the folder that has a MessageClass of "IPM.Microsoft.FolderDesign.NamedView" and iterate each such hidden item to find the one for the current view. Then you'd need to find and decode the undocumented filter properties. Of course depending on how the view is set up it could also be located in either the hidden Views or Common Views folders too. Thanks for your replying. [quoted text clipped - 17 lines] squall -- Message posted via http://www.officekb.com |
How to add icon(or picture) field for each contact in contacts view
There is image after the contact "Bryan Lee",you can find on the second
picture on this blog http://blog.plaxo.com/archives/2006/..._soon_pla.html --squall -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...ddins/200907/1 |
How to add icon(or picture) field for each contact in contacts view
Plaxo, Xobni and any of the others that add things like that use Win32 API
calls and overlay their stuff on the Outlook window. You'd have to experiment to get your code to do that One possible such approach is outlined at http://www.codeproject.com/KB/office...l_Outlook.aspx -- Ken Slovak [MVP - Outlook] http://www.slovaktech.com Author: Professional Programming Outlook 2007. Reminder Manager, Extended Reminders, Attachment Options. http://www.slovaktech.com/products.htm "squallcpp via OfficeKB.com" u53180@uwe wrote in message news:99340b529447a@uwe... There is image after the contact "Bryan Lee",you can find on the second picture on this blog http://blog.plaxo.com/archives/2006/..._soon_pla.html --squall -- Message posted via OfficeKB.com http://www.officekb.com/Uwe/Forums.a...ddins/200907/1 |
All times are GMT +1. The time now is 12:28 PM. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2006 OutlookBanter.com