# Customizable xml-based program launcher

## Recommended Posts

Alright, this is going to be a rather long explanation so bear with me.

What I am trying to to is build a GUI program that, in the end, will look like this:

The middle Frame is for displaying a desktop icon and the right frame is for displaying a selected image.

The XML file I am using looks like this:

<list>
<item id="1">
<ico>Path\to\icon1<\ico>
<img>Path\to\image1<\img>
<exe>Path\to\program1<\exe>
<label>UserDefinedLabel1<\label>
<\item>
<item id="2">
<ico>Path\to\icon2<\ico>
<img>Path\to\image2<\img>
<exe>Path\to\program2<\exe>
<label>UserDefinedLabel2<\label>
<\item>
<\list>

What I want this program to do is when I highlight an item in the listbox (which btw is displaying the <label> value associated with the item) I want the displayed icon and image to change to the ones associated with that entry.

Also I would like to include an additional dialog to open when the 'ADD' button is clicked that will add entries to the XML file that looks like this:

The main problem I am running into is that I do not know much about XML and how to parse it into dynamic variables that can change based off of selection.

Any help is appreciated.

10-29-16 EDIT: For all intents and purposes, I basically want to create something similar to PStart, but with a preview pane with a customizable image for each item in it.

Edited by Zaroz
Clarification

##### Share on other sites

Can't help you without first seeing your code but one thing I noticed in your XML file is that there is no location information for the controls. If you were to use that XML as shown they would just sit on top of each other in the GUI and not be spread out like in your diagram.

##### Share on other sites
2 hours ago, iAmNewbe said:

Can't help you without first seeing your code but one thing I noticed in your XML file is that there is no location information for the controls. If you were to use that XML as shown they would just sit on top of each other in the GUI and not be spread out like in your diagram.

so how would I go about putting location info into the xml?

##### Share on other sites

Grab the X & Y position of the control and write it to the xml file?

## Create an account or sign in to comment

You need to be a member in order to leave a comment

## Create an account

Sign up for a new account in our community. It's easy!

Register a new account

• ### Similar Content

• By ijourneaux
I am trying to read an XML file that looks like the following. I am particularly interested in the ParameterNames and ParameterValues

I was able to read a simplier XML file using
$oXML.load("DataForwardSettings.xml") Local$oInfos = $oXML.selectnodes("//Database") ; or //Info or //Data//Info or //Values/Info but have not been able to read <?xml version="1.0"?> <Entities> <Entity RecordType="TrendData"> <Property Name="AlarmLimitsSetNumber" IsReadOnly="False" ValueType="System.Int32">8</Property> <Property Name="AnalysisParamaterSetNumber" IsReadOnly="False" ValueType="System.Int32">8</Property> <Property Name="ParameterNames" IsReadOnly="True" IsList="True" ListType="List<string>" ValueType="Array" ArrayType="System.String" Count="12">System.Collections.Generic.List1[System.String]<Data>OVERALL|PK-PK WAVEFORM|HFD|CREST FACTOR|SYNC 1-6|1X|2X|3X-4X|FTF|BSF|BPFO|BPFI</Data></Property> <Property Name="ParameterValues" IsReadOnly="True" IsList="True" ListType="List<float>" ValueType="Array" ArrayType="System.Single" Count="12">System.Collections.Generic.List1[System.Single]<Data>0.04706,0.27951,0.02640,4.85608,0.03494,0.01727,0.02256,0.01993,0.00207,0.00060,0.00178,0.00221</Data></Property> <Property Name="NumberOfParameters" IsReadOnly="False" ValueType="System.Int32">12</Property> <Property Name="ModifiedSinceLastDataDump" IsReadOnly="False" ValueType="System.Boolean">False</Property> <Property Name="Load" IsReadOnly="False" ValueType="System.Single">0</Property> <Property Name="RPM" IsReadOnly="False" ValueType="System.Single">140.962</Property> <Property Name="Value" IsReadOnly="False" ValueType="System.Single">-1.1E-20</Property> <Property Name="SampleID" IsReadOnly="False" ValueType="System.Int32">-626794</Property> <Property Name="Timestamp_as_String" IsReadOnly="True" ValueType="System.String">8/18/2018 2:05:33 PM</Property> <Property Name="Timestamp_as_UInt" IsReadOnly="False" ValueType="System.UInt32">1534619133</Property> <Property Name="Timestamp" IsReadOnly="False" ValueType="System.DateTime">8/18/2018 2:05:33 PM</Property> <Property Name="StorageFlag" IsReadOnly="False" ValueType="Enum" EnumType="Emerson.CSI.DataImport.MHM.TrendDataStorageType" EnumValue="2">RPM_And_Overall</Property> <Property Name="Parents" IsReadOnly="False" IsList="True" ListType="List<string>" ValueType="Array" ArrayType="System.String" Count="5">System.Collections.Generic.List`1[System.String]<Data>Database=phmhmdb4ts;C:\RBMdbsrv\CustData\4ts_online_1807.rbm;-99|Area=4TS;-494|Equipment=4THTS;-712|MeasurementPoint=D39;-780|DataCollectionSet=Normal Collection Dryer Rolls;-783</Data></Property> </Entity> </Entities> I tried switching to the XML UDF but was alittle lost in how to use it. I am particularly interested in the ParameterNames and ParameterValues. • By macran I want to generating a XML file (test.xml) like as follow: <?xml version="1.0" encoding="GBK"?> <!DOCTYPE SCHEMA SYSTEM "HGWSPZJK.dtd"> ;I can not generate this line <SCHEMA CRC="HGWSPZ201808_9131011571786229XM_CRC.XML" SSSQ="201808" CHSNAME="HGWSDKQD" NAME="HGWSPZ"> <TAXPAYER CJRMC="sigmagroup" CJRDM="9131011571786229XM" CJLX="DKZK" RECORDCOUNT="411" SBRQ="2018-08-31" NSRMC="sigmagroup" SWSBH="9131011571786229XM"> <Records> <Record BZ="" JKKADM="2244" JKKAMC="shanghai" SE="5907.82" TFRQ="2018-08-23" FPHM="224420181000752586-L02"/> <Record BZ="" JKKADM="2244" JKKAMC="shanghai" SE="4742.4" TFRQ="2018-08-21" FPHM="224420181000743016-L01"/> <Record BZ="" JKKADM="2244" JKKAMC="shanghai" SE="18720" TFRQ="2018-08-14" FPHM="224420181000719215-L01"/> </Records> </TAXPAYER> </SCHEMA> I use XML.UDF Local$oXMLile=_XML_CreateFile(@ScriptDir&"\test.xml","",True)
but there is no function CreateDocumentType
It is no effort even I test use
Local $doct=$oXMLfile.CreateDocumentType("SCHEMA", null, "HGWSPZJK.dtd", null)
$oXmlfile.appendChild($doct)
pls help me thanks.

• By Skeletor
Hi All,
This is purely an XML Language question. I need to understand how I can add a value/element in between another XML element.
Code below shows the XML file. The info tag has the elements already inserted.
<Configuration xmlns="http://schemas.datacontract.org/2004/07/Modules.Reporting.DataContracts.LineItems" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <GenConf> <Info>ID, Site, Name , Site_ID</Info> </GenConf> </Configuration> Now, I want to add a value from a node group into this code. Something like below. But the example below does not work.
Any suggestions?

<Configuration xmlns="http://schemas.datacontract.org/2004/07/Modules.Reporting.DataContracts.LineItems" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"> <GenConf> <Info>ID, Site, a/@id, Name , Site_ID</Info> </GenConf> </Configuration> <ProductName> <a id="Windows Server"/> </ProductName>
• By bhns
try it for make flyers old games xml + Gdi, i belive many sources had lost

• By CosminV
Hello guys,

This XML things are driving me crazy...
Please let me know how can I use the _XMLGetAttrib function... I've tried every possible way that I've read on the forum and I cannot succeed reading an attribute.

The XML looks like bellow:

<?xml version="1.0" encoding="UTF-8"?>
<BATCH attr1= "aaa" attr2="bbb" attr3="ccc">
<Node1 attr1="aaa" attr2="bbb" attr3="ccc" attr4="ddd" attr5="" attr6="eee" attr7="fff" attr8="ggg"/>
<Node2 attr1="aaa" attr2="" attr3="" attr4="ddd"/>
<Node3 attr1="" attr2="" attr3="ccc" attr4="" attr5="" attr6="eee"/>
<Panel attr1="aaa" STATUS="BBB" attr3="ccc" attr4="ddd" attr5="" attr6="eee">
<Node5 attr1="aaa" attr2="bbb" attr3="ccc" attr4="ddd" attr5="" attr6="eee" attr7="fff" attr8="ggg"/>
.............................................................................................................................................................................
</Panel>
</Batch>

I need to read the value of STATUS form the Panel node.

Best regards,
Cococnb
×

• Wiki

• Back

• Git