提交 d4941068 编写于 作者: 丁劲犇's avatar 丁劲犇 😸

We will demostrate all activeX functions in C# example project.

上级 351d855f
......@@ -31,18 +31,21 @@
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(CSharpMapContainer));
this.tabControl_map = new System.Windows.Forms.TabControl();
this.tabPage_map1 = new System.Windows.Forms.TabPage();
this.tabPage_map2 = new System.Windows.Forms.TabPage();
this.tabPage_msg = new System.Windows.Forms.TabPage();
this.axqtaxviewer_planetosm1 = new Axqtaxviewer_planetosmLib.Axqtaxviewer_planetosm();
this.tabPage_map2 = new System.Windows.Forms.TabPage();
this.axqtaxviewer_planetosm2 = new Axqtaxviewer_planetosmLib.Axqtaxviewer_planetosm();
this.tabPage_msg = new System.Windows.Forms.TabPage();
this.menuStrip1 = new System.Windows.Forms.MenuStrip();
this.connectionsToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.getConnectionAddressToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
this.label_msg = new System.Windows.Forms.Label();
this.listBox_msg = new System.Windows.Forms.ListBox();
this.button1 = new System.Windows.Forms.Button();
this.tabControl_map.SuspendLayout();
this.tabPage_map1.SuspendLayout();
this.tabPage_map2.SuspendLayout();
this.tabPage_msg.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.axqtaxviewer_planetosm1)).BeginInit();
this.tabPage_map2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.axqtaxviewer_planetosm2)).BeginInit();
this.menuStrip1.SuspendLayout();
this.SuspendLayout();
//
// tabControl_map
......@@ -54,96 +57,133 @@
this.tabControl_map.Location = new System.Drawing.Point(0, 0);
this.tabControl_map.Name = "tabControl_map";
this.tabControl_map.SelectedIndex = 0;
this.tabControl_map.Size = new System.Drawing.Size(804, 520);
this.tabControl_map.Size = new System.Drawing.Size(912, 562);
this.tabControl_map.TabIndex = 0;
//
// tabPage_map1
//
this.tabPage_map1.Controls.Add(this.button1);
this.tabPage_map1.Controls.Add(this.listBox_msg);
this.tabPage_map1.Controls.Add(this.label_msg);
this.tabPage_map1.Controls.Add(this.menuStrip1);
this.tabPage_map1.Controls.Add(this.axqtaxviewer_planetosm1);
this.tabPage_map1.Location = new System.Drawing.Point(4, 22);
this.tabPage_map1.Name = "tabPage_map1";
this.tabPage_map1.Padding = new System.Windows.Forms.Padding(3);
this.tabPage_map1.Size = new System.Drawing.Size(796, 494);
this.tabPage_map1.Size = new System.Drawing.Size(904, 536);
this.tabPage_map1.TabIndex = 0;
this.tabPage_map1.Text = "Map1";
this.tabPage_map1.UseVisualStyleBackColor = true;
//
// axqtaxviewer_planetosm1
//
this.axqtaxviewer_planetosm1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Left)
| System.Windows.Forms.AnchorStyles.Right)));
this.axqtaxviewer_planetosm1.Enabled = true;
this.axqtaxviewer_planetosm1.Location = new System.Drawing.Point(-4, 3);
this.axqtaxviewer_planetosm1.Name = "axqtaxviewer_planetosm1";
this.axqtaxviewer_planetosm1.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("axqtaxviewer_planetosm1.OcxState")));
this.axqtaxviewer_planetosm1.Size = new System.Drawing.Size(685, 533);
this.axqtaxviewer_planetosm1.TabIndex = 0;
this.axqtaxviewer_planetosm1.evt_Message += new Axqtaxviewer_planetosmLib.Iqtaxviewer_planetosmEvents_evt_MessageEventHandler(this.axqtaxviewer_planetosm1_evt_Message);
//
// tabPage_map2
//
this.tabPage_map2.Controls.Add(this.axqtaxviewer_planetosm2);
this.tabPage_map2.Location = new System.Drawing.Point(4, 22);
this.tabPage_map2.Name = "tabPage_map2";
this.tabPage_map2.Padding = new System.Windows.Forms.Padding(3);
this.tabPage_map2.Size = new System.Drawing.Size(796, 494);
this.tabPage_map2.Size = new System.Drawing.Size(776, 511);
this.tabPage_map2.TabIndex = 1;
this.tabPage_map2.Text = "Map2";
this.tabPage_map2.UseVisualStyleBackColor = true;
//
// axqtaxviewer_planetosm2
//
this.axqtaxviewer_planetosm2.Dock = System.Windows.Forms.DockStyle.Fill;
this.axqtaxviewer_planetosm2.Enabled = true;
this.axqtaxviewer_planetosm2.Location = new System.Drawing.Point(3, 3);
this.axqtaxviewer_planetosm2.Name = "axqtaxviewer_planetosm2";
this.axqtaxviewer_planetosm2.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("axqtaxviewer_planetosm2.OcxState")));
this.axqtaxviewer_planetosm2.Size = new System.Drawing.Size(770, 505);
this.axqtaxviewer_planetosm2.TabIndex = 0;
this.axqtaxviewer_planetosm2.evt_Message += new Axqtaxviewer_planetosmLib.Iqtaxviewer_planetosmEvents_evt_MessageEventHandler(this.axqtaxviewer_planetosm2_evt_Message);
//
// tabPage_msg
//
this.tabPage_msg.Controls.Add(this.listBox_msg);
this.tabPage_msg.Location = new System.Drawing.Point(4, 22);
this.tabPage_msg.Name = "tabPage_msg";
this.tabPage_msg.Padding = new System.Windows.Forms.Padding(3);
this.tabPage_msg.Size = new System.Drawing.Size(796, 494);
this.tabPage_msg.Size = new System.Drawing.Size(776, 536);
this.tabPage_msg.TabIndex = 2;
this.tabPage_msg.Text = "Messages";
this.tabPage_msg.UseVisualStyleBackColor = true;
//
// axqtaxviewer_planetosm1
// menuStrip1
//
this.axqtaxviewer_planetosm1.Dock = System.Windows.Forms.DockStyle.Fill;
this.axqtaxviewer_planetosm1.Enabled = true;
this.axqtaxviewer_planetosm1.Location = new System.Drawing.Point(3, 3);
this.axqtaxviewer_planetosm1.Name = "axqtaxviewer_planetosm1";
this.axqtaxviewer_planetosm1.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("axqtaxviewer_planetosm1.OcxState")));
this.axqtaxviewer_planetosm1.Size = new System.Drawing.Size(790, 488);
this.axqtaxviewer_planetosm1.TabIndex = 0;
this.menuStrip1.Dock = System.Windows.Forms.DockStyle.None;
this.menuStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.connectionsToolStripMenuItem});
this.menuStrip1.Location = new System.Drawing.Point(3, 3);
this.menuStrip1.Name = "menuStrip1";
this.menuStrip1.Size = new System.Drawing.Size(97, 25);
this.menuStrip1.TabIndex = 1;
this.menuStrip1.Text = "menuStrip1";
//
// axqtaxviewer_planetosm2
// connectionsToolStripMenuItem
//
this.axqtaxviewer_planetosm2.Dock = System.Windows.Forms.DockStyle.Fill;
this.axqtaxviewer_planetosm2.Enabled = true;
this.axqtaxviewer_planetosm2.Location = new System.Drawing.Point(3, 3);
this.axqtaxviewer_planetosm2.Name = "axqtaxviewer_planetosm2";
this.axqtaxviewer_planetosm2.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("axqtaxviewer_planetosm2.OcxState")));
this.axqtaxviewer_planetosm2.Size = new System.Drawing.Size(790, 488);
this.axqtaxviewer_planetosm2.TabIndex = 0;
this.connectionsToolStripMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
this.getConnectionAddressToolStripMenuItem});
this.connectionsToolStripMenuItem.Name = "connectionsToolStripMenuItem";
this.connectionsToolStripMenuItem.Size = new System.Drawing.Size(89, 21);
this.connectionsToolStripMenuItem.Text = "connections";
//
// getConnectionAddressToolStripMenuItem
//
this.getConnectionAddressToolStripMenuItem.Name = "getConnectionAddressToolStripMenuItem";
this.getConnectionAddressToolStripMenuItem.Size = new System.Drawing.Size(213, 22);
this.getConnectionAddressToolStripMenuItem.Text = "get connection address";
this.getConnectionAddressToolStripMenuItem.Click += new System.EventHandler(this.getConnectionAddressToolStripMenuItem_Click);
//
// label_msg
//
this.label_msg.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left)));
this.label_msg.AutoSize = true;
this.label_msg.Location = new System.Drawing.Point(1, 499);
this.label_msg.Name = "label_msg";
this.label_msg.Size = new System.Drawing.Size(41, 12);
this.label_msg.TabIndex = 1;
this.label_msg.Text = "label1";
//
// listBox_msg
//
this.listBox_msg.Dock = System.Windows.Forms.DockStyle.Fill;
this.listBox_msg.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)
| System.Windows.Forms.AnchorStyles.Right)));
this.listBox_msg.FormattingEnabled = true;
this.listBox_msg.HorizontalScrollbar = true;
this.listBox_msg.ItemHeight = 12;
this.listBox_msg.Location = new System.Drawing.Point(3, 3);
this.listBox_msg.Location = new System.Drawing.Point(687, 0);
this.listBox_msg.Name = "listBox_msg";
this.listBox_msg.Size = new System.Drawing.Size(790, 488);
this.listBox_msg.TabIndex = 0;
//
// button1
//
this.button1.Location = new System.Drawing.Point(8, 6);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(75, 23);
this.button1.TabIndex = 1;
this.button1.Text = "button1";
this.button1.UseVisualStyleBackColor = true;
this.listBox_msg.Size = new System.Drawing.Size(217, 532);
this.listBox_msg.TabIndex = 1;
//
// CSharpMapContainer
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(804, 520);
this.ClientSize = new System.Drawing.Size(912, 562);
this.Controls.Add(this.tabControl_map);
this.MainMenuStrip = this.menuStrip1;
this.Name = "CSharpMapContainer";
this.Text = "Map container";
this.tabControl_map.ResumeLayout(false);
this.tabPage_map1.ResumeLayout(false);
this.tabPage_map2.ResumeLayout(false);
this.tabPage_msg.ResumeLayout(false);
this.tabPage_map1.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.axqtaxviewer_planetosm1)).EndInit();
this.tabPage_map2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.axqtaxviewer_planetosm2)).EndInit();
this.menuStrip1.ResumeLayout(false);
this.menuStrip1.PerformLayout();
this.ResumeLayout(false);
}
......@@ -154,9 +194,12 @@
private System.Windows.Forms.TabPage tabPage_map1;
private System.Windows.Forms.TabPage tabPage_map2;
private System.Windows.Forms.TabPage tabPage_msg;
private System.Windows.Forms.Button button1;
private Axqtaxviewer_planetosmLib.Axqtaxviewer_planetosm axqtaxviewer_planetosm1;
private Axqtaxviewer_planetosmLib.Axqtaxviewer_planetosm axqtaxviewer_planetosm2;
private System.Windows.Forms.MenuStrip menuStrip1;
private System.Windows.Forms.ToolStripMenuItem connectionsToolStripMenuItem;
private System.Windows.Forms.ToolStripMenuItem getConnectionAddressToolStripMenuItem;
private System.Windows.Forms.Label label_msg;
private System.Windows.Forms.ListBox listBox_msg;
}
}
......
......@@ -16,5 +16,80 @@ namespace CSharpContainer
{
InitializeComponent();
}
//a common message output method
private void messageOutput(string strmsg, int intend = 0)
{
string msg_string = new string(' ', intend);
msg_string += strmsg;
listBox_msg.Items.Add(msg_string);
while (listBox_msg.Items.Count > 1024)
listBox_msg.Items.RemoveAt(0);
listBox_msg.SetSelected(listBox_msg.Items.Count - 1, true);
}
//a common message output method for paras
private void messageOutput(Dictionary<string, string> d, int intend = 0)
{
string msg_span = new string(' ', intend);
foreach (string k in d.Keys)
{
string v ;
if (true == d.TryGetValue(k,out v) )
{
string msg = msg_span + k + "=" + v;
listBox_msg.Items.Add(msg);
}
}
while (listBox_msg.Items.Count > 1024)
listBox_msg.Items.RemoveAt(0);
listBox_msg.SetSelected(listBox_msg.Items.Count - 1, true);
}
//a common method to convert strings to dictionary.
private Dictionary<string,string> string2dict(string str)
{
char[] spc = { ';' };
Dictionary<string, string> retd = new Dictionary<string, string>();
string [] prop_pairs = str.Split(spc);
foreach (string pa in prop_pairs)
{
char[] spsub = { '=' };
string[] prop_keyv = pa.Split(spsub);
if (prop_keyv.Length >=2)
{
if (retd.ContainsKey(prop_keyv[0]) == false)
retd.Add(prop_keyv[0], prop_keyv[1]);
}
}
return retd;
}
//Test get tile layer's remote address. In this example, the layername is "OSM"
private void getConnectionAddressToolStripMenuItem_Click(object sender, EventArgs e)
{
messageOutput("osm_get_remote_address:");
string str = axqtaxviewer_planetosm1.osm_get_remote_address("OSM");
messageOutput(str,4);
}
private void axqtaxviewer_planetosm1_evt_Message(object sender, Axqtaxviewer_planetosmLib.Iqtaxviewer_planetosmEvents_evt_MessageEvent e)
{
if (e.p0.IndexOf("MOUSE_MOVE") > 0)
label_msg.Text = e.p0;
else
{
messageOutput("EVT from " + sender.ToString() + ":" + e.p0, 0);
messageOutput(string2dict(e.p0), 4);
}
}
private void axqtaxviewer_planetosm2_evt_Message(object sender, Axqtaxviewer_planetosmLib.Iqtaxviewer_planetosmEvents_evt_MessageEvent e)
{
if (e.p0.IndexOf("MOUSE_MOVE") > 0)
label_msg.Text = e.p0;
else
{
messageOutput("EVT from " + sender.ToString() + ":" + e.p0, 0);
messageOutput(string2dict(e.p0), 4);
}
}
}
}
......@@ -117,6 +117,9 @@
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="menuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<data name="axqtaxviewer_planetosm1.OcxState" mimetype="application/x-microsoft.net.object.binary.base64">
<value>
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册