{"id":115,"date":"2006-11-30T03:01:18","date_gmt":"2006-11-30T01:01:18","guid":{"rendered":"https:\/\/alax.info\/blog\/115"},"modified":"2006-11-30T03:06:54","modified_gmt":"2006-11-30T01:06:54","slug":"how-to-add-scrolling-to-a-property-page-in-atl-and-wtl","status":"publish","type":"post","link":"https:\/\/alax.info\/blog\/115","title":{"rendered":"How to add scrolling to a property page in ATL and WTL"},"content":{"rendered":"<p>Sometimes you may get into situation when you cannot put all the required controls into property page of fixed size (for example there are several property pages in a sheet and you cannot expand one so that other look ugly with new empty space).<\/p>\n<p>Adding scrollbar that scrolls the controls might be a good solution for the problem. With <em>CScrollablePropertyPageT<\/em> template based on WTL&#8217;s <em>CPropertyPageImpl<\/em> it&#8217;s even easier.<\/p>\n<p><img decoding=\"async\" alt=\"image001.png\" id=\"image111\" src=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2006\/11\/image001.png\" \/><\/p>\n<p><!--more--><\/p>\n<p>As a developer you need to put (in a dialog template resource editor in Visual Studio IDE) an invisible static control with an identifier of -2 at the position where the actual property page should end and the controls below would be available using scrolling down.<\/p>\n<p><img decoding=\"async\" id=\"image112\" alt=\"image002.png\" src=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2006\/11\/image002.png\" \/><\/p>\n<p>Visual C++.NET 2003 source code can be downloaded <a id=\"p113\" title=\"scrollingpropertypage01.zip\" href=\"https:\/\/alax.info\/blog\/scrollingpropertypage01.zip\">here<\/a>, compiled binary &#8211; <a id=\"p114\" href=\"https:\/\/alax.info\/blog\/wp-content\/uploads\/2006\/11\/scrollingpropertypage01exe.zip\">here<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sometimes you may get into situation when you cannot put all the required controls into property page of fixed size (for example there are several property pages in a sheet and you cannot expand one so that other look ugly with new empty space). Adding scrollbar that scrolls the controls might be a good solution&hellip; <\/p>\n<p><a class=\"moretag\" href=\"https:\/\/alax.info\/blog\/115\">Read the full article<\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,13,20],"tags":[],"class_list":["post-115","post","type-post","status-publish","format-standard","hentry","category-atl","category-source","category-wtl"],"_links":{"self":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts\/115","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/comments?post=115"}],"version-history":[{"count":0,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/posts\/115\/revisions"}],"wp:attachment":[{"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/media?parent=115"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/categories?post=115"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alax.info\/blog\/wp-json\/wp\/v2\/tags?post=115"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}