{"id":20040,"date":"2024-03-15T19:52:35","date_gmt":"2024-03-15T19:52:35","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/"},"modified":"2024-03-21T17:08:16","modified_gmt":"2024-03-21T17:08:16","slug":"how-can-c-builder-display-multiple-images","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/","title":{"rendered":"How can C++ Builder display multiple images?"},"content":{"rendered":"<p>In C++ Builder, you can display multiple images by using the TImage component and TOpenPictureDialog component.<\/p>\n<p>Here is one way to display multiple images:<\/p>\n<ol>\n<li>In the interface designer of C++ Builder, drag and drop a TImage component onto the form as the display area for the image.<\/li>\n<li>Add a TOpenPictureDialog component to the form for selecting multiple images.<\/li>\n<li>In the code of the form, create a TStringList object to store the file paths of selected multiple images.<\/li>\n<li>In events where multiple images need to be displayed (such as a button click event), use the Execute method of the TOpenPictureDialog component to select multiple image files, and save the selected file paths to a TStringList object.<\/li>\n<li>Iterate through the file paths in the TStringList object, load each image using the Picture property of the TImage component, then adjust the position and size of the TImage component to display multiple images.<\/li>\n<\/ol>\n<p>Here is an example code:<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;vcl.h&gt;<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">pragma<\/span> hdrstop<\/span>\r\n\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">\"Unit1.h\"<\/span><\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">include<\/span> <span class=\"hljs-string\">&lt;Vcl.Dialogs.hpp&gt;<\/span><\/span>\r\n\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">pragma<\/span> package(smart_init)<\/span>\r\n<span class=\"hljs-meta\">#<span class=\"hljs-keyword\">pragma<\/span> resource <span class=\"hljs-string\">\"*.dfm\"<\/span><\/span>\r\nTForm1 *Form1;\r\n\r\n<span class=\"hljs-comment\">\/\/---------------------------------------------------------------------------<\/span>\r\n<span class=\"hljs-function\">__fastcall <span class=\"hljs-title\">TForm1::TForm1<\/span><span class=\"hljs-params\">(TComponent* Owner)<\/span>\r\n    : TForm(Owner)\r\n{<\/span>\r\n}\r\n\r\n<span class=\"hljs-comment\">\/\/---------------------------------------------------------------------------<\/span>\r\n<span class=\"hljs-function\"><span class=\"hljs-type\">void<\/span> __fastcall <span class=\"hljs-title\">TForm1::Button1Click<\/span><span class=\"hljs-params\">(TObject *Sender)<\/span>\r\n<\/span>{\r\n    TOpenPictureDialog *OpenPictureDialog = <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-built_in\">TOpenPictureDialog<\/span>(<span class=\"hljs-keyword\">this<\/span>);\r\n    TStringList *ImageFiles = <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-built_in\">TStringList<\/span>();\r\n    <span class=\"hljs-keyword\">if<\/span> (OpenPictureDialog-&gt;<span class=\"hljs-built_in\">Execute<\/span>())\r\n    {\r\n        ImageFiles-&gt;<span class=\"hljs-built_in\">Assign<\/span>(OpenPictureDialog-&gt;Files);\r\n        <span class=\"hljs-keyword\">for<\/span> (<span class=\"hljs-type\">int<\/span> i = <span class=\"hljs-number\">0<\/span>; i &lt; ImageFiles-&gt;Count; i++)\r\n        {\r\n            TImage *Image = <span class=\"hljs-keyword\">new<\/span> <span class=\"hljs-built_in\">TImage<\/span>(<span class=\"hljs-keyword\">this<\/span>);\r\n            Image-&gt;Parent = <span class=\"hljs-keyword\">this<\/span>;\r\n            Image-&gt;Picture-&gt;<span class=\"hljs-built_in\">LoadFromFile<\/span>(ImageFiles-&gt;Strings[i]);\r\n            <span class=\"hljs-comment\">\/\/ \u6839\u636e\u9700\u8981\u8c03\u6574\u56fe\u7247\u7684\u4f4d\u7f6e\u548c\u5c3a\u5bf8<\/span>\r\n            Image-&gt;Left = i * <span class=\"hljs-number\">100<\/span>;\r\n            Image-&gt;Top = <span class=\"hljs-number\">50<\/span>;\r\n            Image-&gt;Width = <span class=\"hljs-number\">100<\/span>;\r\n            Image-&gt;Height = <span class=\"hljs-number\">100<\/span>;\r\n        }\r\n    }\r\n    <span class=\"hljs-keyword\">delete<\/span> OpenPictureDialog;\r\n    <span class=\"hljs-keyword\">delete<\/span> ImageFiles;\r\n}\r\n<\/code><\/pre>\n<p>In the code above, when the button is clicked, a file selection dialog box will pop up. After selecting multiple image files, multiple images will be displayed on the form. Each image is displayed using a new TImage component, with the position and size adjusted as needed.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In C++ Builder, you can display multiple images by using the TImage component and TOpenPictureDialog component. Here is one way to display multiple images: In the interface designer of C++ Builder, drag and drop a TImage component onto the form as the display area for the image. Add a TOpenPictureDialog component to the form for [&hellip;]<\/p>\n","protected":false},"author":8,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-20040","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How can C++ Builder display multiple images? - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How can C++ Builder display multiple images?\" \/>\n<meta property=\"og:description\" content=\"In C++ Builder, you can display multiple images by using the TImage component and TOpenPictureDialog component. Here is one way to display multiple images: In the interface designer of C++ Builder, drag and drop a TImage component onto the form as the display area for the image. Add a TOpenPictureDialog component to the form for [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T19:52:35+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T17:08:16+00:00\" \/>\n<meta name=\"author\" content=\"William Carter\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"William Carter\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\"},\"author\":{\"name\":\"William Carter\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0\"},\"headline\":\"How can C++ Builder display multiple images?\",\"datePublished\":\"2024-03-15T19:52:35+00:00\",\"dateModified\":\"2024-03-21T17:08:16+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\"},\"wordCount\":208,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\",\"name\":\"How can C++ Builder display multiple images? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T19:52:35+00:00\",\"dateModified\":\"2024-03-21T17:08:16+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How can C++ Builder display multiple images?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0\",\"name\":\"William Carter\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g\",\"caption\":\"William Carter\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/williamcarter\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How can C++ Builder display multiple images? - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/","og_locale":"en_US","og_type":"article","og_title":"How can C++ Builder display multiple images?","og_description":"In C++ Builder, you can display multiple images by using the TImage component and TOpenPictureDialog component. Here is one way to display multiple images: In the interface designer of C++ Builder, drag and drop a TImage component onto the form as the display area for the image. Add a TOpenPictureDialog component to the form for [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T19:52:35+00:00","article_modified_time":"2024-03-21T17:08:16+00:00","author":"William Carter","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"William Carter","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/"},"author":{"name":"William Carter","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0"},"headline":"How can C++ Builder display multiple images?","datePublished":"2024-03-15T19:52:35+00:00","dateModified":"2024-03-21T17:08:16+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/"},"wordCount":208,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/","url":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/","name":"How can C++ Builder display multiple images? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T19:52:35+00:00","dateModified":"2024-03-21T17:08:16+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-can-c-builder-display-multiple-images\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How can C++ Builder display multiple images?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/f697031891aacefc4b681d139781d3c0","name":"William Carter","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1786698071dd8d74bec894b512f9e3c610c3a2a32985f67e688976cee3c8bbef?s=96&d=mm&r=g","caption":"William Carter"},"url":"https:\/\/www.silicloud.com\/blog\/author\/williamcarter\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/20040","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=20040"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/20040\/revisions"}],"predecessor-version":[{"id":53814,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/20040\/revisions\/53814"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=20040"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=20040"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=20040"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}