Zum Inhalt springen

O_Neill

Mitglieder
  • Gesamte Inhalte

    36
  • Benutzer seit

  • Letzter Besuch

Beiträge von O_Neill

  1. Also ich möchte mit einer Batchdatei eine von mir programmierte Anwendung starten die eine Exceldatei erstellt.

    Wenn das fertig ist möchte ich die erstellte Exceltabelle starten.

    Es hat seine gründe warum ich es nicht im Programm direkt starten möchte, welche an den bei unserem Kunden vorhandenen Möglichkeiten liegt.

    Jetzt startet der allerdings mein Programm und führt ohne auf dieses zu warten den nächsten befehl aus.

    Was kann ich tun das es auf das erste Programm wartet.

    Diese von mir programmierte Anwendung läuft ohne jegliche Bildschirmausgabe also nur im Hintergrund.

    Es würde vieleicht auch helfen wenn es ca. 10sek Pause zwischendurch gebe.

    start V:\Kunde\INDIVID\Applikationen\Programm\Programm.exe %1 %2 %3 %4 %5 %6 %7 %8 %9 
    
    start %1%2SM.xls
    
    

    %1 = Pfad der zu Startenden Exceltabelle.

    %2 = Ein Zahlenwert der Bestandteil des Dateinamens ist.

  2. Also ich habe jetzt zu Testzwecken ein Programm geschrieben in das ich eine neue Klasse eingefügt habe die so aussieht:

        class MyApp : ApplicationContext
    
        {
    
            public MyApp()
    
            {
    
                DoIt();
    
            }
    
            public void DoIt()
    
            {
    
                MessageBox.Show("Hallo Welt!");
    
                Application.Exit();
    
    
            }
    
        }
    aufgerufen habe ich sie indem ich einfach den aufruf der Form1 Klasse durch meine ersetzt habe im Main.
            static void Main()
    
            {
    
                Application.EnableVisualStyles();
    
                Application.SetCompatibleTextRenderingDefault(false);
    
                Application.Run(new MyApp());
    
            }

    Was muss ich jetzt noch machen damit sich das Programm auch wieder beendet?

  3. Also ich glaube ich habe eine recht einfache Frage aber irgendwie steh ich grad aufn Schlauch.

    Also ich habe in meinem Programm einige Dialoge und benötige nun eine Variable auf die ich von jedem Dialog drauf zugreifen kann und sie muss Dialogübergreifent ihren Wert behalten.

    Wie mach ich das, wie und vorallem wo deklarier ich diese und wie greife ich darauf zu.

    ich weis eigentlich Basiswissen aber irgendwie komm ich grad net drauf.

    Vielen Dank schonmal für alle Mühe :)

  4. Also ich habe folgendes Problem:

    Ich starte von einem anderen Programm aus eine Bat-Datei und übergebe an diese Variablen. Das Programm ermöglicht mir leider nur den Start von Bat-Dateien für meinen Zweck.

    So nun habe ich also Variablen in der Bat-Datei.

    Jetzt möchte ich Excel mit hilfe der Bat-Datei starten und die Werte die ich in den Variablen habe in bestimmte Zellen schreiben.

    Hat irgend jemand ne Idee wie das Realisierbar ist?

  5. Ich weis die Überschrift ist nicht gerade die aussagekräftigste aber ich weis nicht wie ich es besser beschreiben soll.

    Also ich habe eine eigene Klasse ("FilterPanal") abgeleitet von der UserControl-Klasse.

    Von dieser Klasse lasse ich nun auf einem Formularfenster eine dynamische Anzahl von Objekten instanziieren.

    Nun muss ich was bei ButtonClick machen und dafür die Objekte "einsammeln" bzw. mit aus jedem Objekt etwas auslesen.

    So sieht bisher mein Quellcode aus:

                for (i = 0; i < FlpFilterContainer.Controls.Count-1;i++ )
    
                {
    
                    Control[] FiltPan = this.Controls.Find("Fp0", false);
    
                    MessageBox.Show((FiltPan[0] as FilterPanel).Filterbedingung);
    
    
                }
    Ich habe jetzt erstmal ne feste Bezeichnung hingeschrieben um zu testen obs überhaupt geht. Diese Bezeichnung entspricht dem ersten Objekt. Die Zuweisung des Namen habe ich geprüft. Vieleicht noch als kleiner zusatz die Klasse:
    using System;
    
    using System.Collections.Generic;
    
    using System.ComponentModel;
    
    using System.Drawing;
    
    using System.Data;
    
    using System.Text;
    
    using System.Windows.Forms;
    
    using Infra_Setup_Generator.Properties;
    
    using System.Data.Odbc;
    
    
    namespace Infra_Setup_Generator
    
    {
    
        public partial class FilterPanel : UserControl
    
        {
    
            public FilterPanel()
    
            {
    
                InitializeComponent();
    
            }
    
    
            private bool isNew;
    
    
            public bool IsNew
    
            {
    
                get { return isNew; }
    
                set { isNew = value; }
    
            }
    
    
            private string filterbedingung;
    
    
            public string Filterbedingung
    
            {
    
                get { return filterbedingung; }
    
                set { filterbedingung = value; }
    
            }
    
    
            private string verknuepfung;
    
    
            public string Verknuepfung
    
            {
    
                get { return verknuepfung; }
    
                set { verknuepfung = value; }
    
            }
    
    
            private FlowLayoutPanel parentPanel;
    
    
            public FlowLayoutPanel ParentPanel
    
            {
    
                get { return parentPanel; }
    
                set { parentPanel = value; }
    
            }
    
            private string[] aspalten;
    
    
            public string[] Aspalten
    
            {
    
                get { return aspalten; }
    
                set { aspalten = value; }
    
            }
    
    
    
            public FilterPanel(string[] spalten) :this()
    
            {
    
                aspalten = spalten;
    
                CboSpalte.Items.Add("[Auswählen]");
    
    
                for (int i = 0; i <= spalten.GetUpperBound(0); i++)
    
                {
    
                    CboSpalte.Items.Add(spalten[i]);
    
                }
    
                IsNew = true;
    
                CboSpalte.SelectedIndex = 0;
    
                CboOp.SelectedIndex = 0;
    
                RbUnd.Checked = true;
    
            }
    
    
            private void CboSpalte_SelectedIndexChanged(object sender, EventArgs e)
    
            {
    
                Settings s = new Settings();
    
                if (CboSpalte.SelectedIndex == 0)
    
                {
    
                    if (!IsNew)
    
                    {
    
                        this.parentPanel.Controls.Remove(this);
    
                    }
    
                }
    
                else
    
                {
    
                    if(IsNew)
    
                    {
    
                        IsNew = false;
    
                        CboOp.Show();
    
                        TxtFilter.Show();
    
                        RbUnd.Show();
    
                        RbOder.Show();
    
    
                        OdbcConnection con = new OdbcConnection(s.ConStringODBC);
    
                        String[] SSpalten;
    
    
                        SSpalten = new String[s.AnzSp];
    
                        SSpalten = s.Spalten.Split(';');
    
                        FilterPanel filtpan = new FilterPanel(aspalten);
    
                        filtpan.parentPanel = this.parentPanel;
    
                        filtpan.Name = "Fp" + (parentPanel.Controls.Count).ToString();
    
                        this.parentPanel.Controls.Add(filtpan);
    
                    }
    
                }
    
            }
    
    
            private void Eingabe_Validated(object sender, EventArgs e)
    
            {
    
                filterbedingung = CboSpalte.SelectedText + " " + CboOp.SelectedText + " '" + TxtFilter.Text + "'";
    
            }
    
    
            private void Radio_CheckedChanged(object sender, EventArgs e)
    
            {
    
                if (RbUnd.Checked)
    
                {
    
                    verknuepfung = " AND ";
    
                }
    
                else
    
                {
    
                    verknuepfung = " OR ";
    
                }
    
            }
    
        }
    
    }
    
    

    Vielen vielen Dank schonmal.

  6. Programmiersprache: C#

    Visual Studio 2005

    Also ich habe eine neue Klasse geschrieben die von einem UserControl abgeleitet ist. Dies dient mir sozusagen als Panel.

    Auf diesem UserControl befinden sich ComboBoxen,Textboxen und paar Radiobuttons.

    Ich lasse nun jedesmal wenn ich aus der Comobox was ausgewählt habe lasse ich als eine neue Instanz dieses Panels auf einem Formularfenster ausgeben.

    Das funzt auch alles wunderbar.

    Nun steht für mich die Frage wie bekomme ich die eingegebenen Daten wieder raus.

    Hier meine UserControl-Klasse die ich FilterPanel getauft habe:

    using System;
    
    using System.Collections.Generic;
    
    using System.ComponentModel;
    
    using System.Drawing;
    
    using System.Data;
    
    using System.Text;
    
    using System.Windows.Forms;
    
    using Infra_Setup_Generator.Properties;
    
    using System.Data.Odbc;
    
    
    namespace Infra_Setup_Generator
    
    {
    
        public partial class FilterPanel : UserControl
    
        {
    
            public FilterPanel()
    
            {
    
                InitializeComponent();
    
            }
    
    
            private bool isNew;
    
    
            public bool IsNew
    
            {
    
                get { return isNew; }
    
                set { isNew = value; }
    
            }
    
    
            private string filterbedingung;
    
    
            public string Filterbedingung
    
            {
    
                get { return filterbedingung; }
    
                set { filterbedingung = value; }
    
            }
    
    
            private string verknuepfung;
    
    
            public string Verknuepfung
    
            {
    
                get { return verknuepfung; }
    
                set { verknuepfung = value; }
    
            }
    
    
            private FlowLayoutPanel parentPanel;
    
    
            public FlowLayoutPanel ParentPanel
    
            {
    
                get { return parentPanel; }
    
                set { parentPanel = value; }
    
            }
    
            private string[] aspalten;
    
    
            public string[] Aspalten
    
            {
    
                get { return aspalten; }
    
                set { aspalten = value; }
    
            }
    
    
    
            public FilterPanel(string[] spalten) :this()
    
            {
    
                aspalten = spalten;
    
                CboSpalte.Items.Add("[Auswählen]");
    
    
                for (int i = 0; i <= spalten.GetUpperBound(0); i++)
    
                {
    
                    CboSpalte.Items.Add(spalten[i]);
    
                }
    
                IsNew = true;
    
                CboSpalte.SelectedIndex = 0;
    
                CboOp.SelectedIndex = 0;
    
                RbUnd.Checked = true;
    
            }
    
    
            private void CboSpalte_SelectedIndexChanged(object sender, EventArgs e)
    
            {
    
                Settings s = new Settings();
    
                if (CboSpalte.SelectedIndex == 0)
    
                {
    
                    if (!IsNew)
    
                    {
    
                        this.parentPanel.Controls.Remove(this);
    
                    }
    
                }
    
                else
    
                {
    
                    if(IsNew)
    
                    {
    
                        IsNew = false;
    
                        CboOp.Show();
    
                        TxtFilter.Show();
    
                        RbUnd.Show();
    
                        RbOder.Show();
    
    
                        OdbcConnection con = new OdbcConnection(s.ConStringODBC);
    
                        String[] SSpalten;
    
    
                        SSpalten = new String[s.AnzSp];
    
                        SSpalten = s.Spalten.Split(';');
    
                        FilterPanel filtpan = new FilterPanel(aspalten);
    
                        filtpan.parentPanel = this.parentPanel;
    
                        this.parentPanel.Controls.Add(filtpan);
    
                    }
    
                }
    
            }
    
    
            private void Eingabe_Validated(object sender, EventArgs e)
    
            {
    
                filterbedingung = CboSpalte.SelectedText + " " + CboOp.SelectedText + " '" + TxtFilter.Text + "'";
    
            }
    
    
            private void Radio_CheckedChanged(object sender, EventArgs e)
    
            {
    
                if (RbUnd.Checked)
    
                {
    
                    verknuepfung = " AND ";
    
                }
    
                else
    
                {
    
                    verknuepfung = " OR ";
    
                }
    
            }
    
        }
    
    }
    
    

    Vielen Dank für eure Hilfe schonmal ;)

  7. Am Freitag habe ich nen Gespräch mit meinen Chef zwecks Arbeitsvertrag da am 30.06 meine Ausbildung endet und ich davon ausgehe die Prüfung zu bestehen.

    Ich Wohne und Arbeite in Thüringen in einem Systemhaus mit 16 Mitarbeitern.

    Arbeite regulär von 8-17Uhr (meist länger).

    Kurze Mittagspause.

    Bin 20 und ledig.

    Wir warten ein ERP/PPS System und entwickeln schnittstellen und kleinere Anwendungen für das Produzierende Gewerbe. (kleine bis Mittelstand)

    Was ist als Monatsgehalt Brutto realistisch?

    Schonmal vielen Dank ;)

  8. Also ich erzeuge mit folgenden Code Textfelder (und Labels) anhand der Anzahl an Selektierten einträgen in einer Listbox mit den Namen der selektierten Einträge:

            public void BtnFilter_Click(object sender, EventArgs e)
    
            {
    
                int i = 0;
    
                int y = 170;
    
    
                for (i = 0; i < listBox1.SelectedItems.Count; i++)
    
                {
    
                    Label[] LFilter = new Label[listBox1.SelectedItems.Count];
    
                    LFilter[i] = new Label();
    
                    LFilter[i].Location = new System.Drawing.Point(571, y);
    
                    LFilter[i].Text = listBox1.GetItemText(listBox1.SelectedItems[i]);
    
                    LFilter[i].Name = "Lbl"+listBox1.GetItemText(listBox1.SelectedItems[i]);
    
                    Controls.Add(LFilter[i]);
    
                    MessageBox.Show(listBox1.GetItemText(listBox1.SelectedItems[i]));
    
                    TextBox[] TFilter = new TextBox[listBox1.SelectedItems.Count];
    
                    TFilter[i] = new TextBox();
    
                    TFilter[i].Location = new System.Drawing.Point(800, y);
    
                    TFilter[i].Name = "Txt" + listBox1.GetItemText(listBox1.SelectedItems[i]);
    
                    Controls.Add(TFilter[i]);
    
                    y = y + 25;
    
                }
    
    
            }

    Nun möchte ich von einem andern Button_Click Ereigniss darauf zugreifen können und die eingetragenen Werte in den Textfeldern abfragen.

    Irgend jemand ne Idee?

    Danke schonmal :)

  9. Ich habe zur Laufzeit auf Buttonclick mehrere Textboxen erzeugt die sich nun nicht beschreiben lassen also während das Programm läuft

    Hier der Code:

            private void BtnFilter_Click(object sender, EventArgs e)
    
            {
    
                int i = 0;
    
                int y = 170;
    
    
                for (i = 0; i < listBox1.SelectedItems.Count; i++)
    
                {
    
                    Label[] LFilter = new Label[listBox1.SelectedItems.Count];
    
                    LFilter[i] = new Label();
    
                    LFilter[i].Location = new System.Drawing.Point(571, y);
    
                    LFilter[i].Text = listBox1.GetItemText(listBox1.SelectedItems[i]);
    
                    LFilter[i].Name = "Lbl"+listBox1.GetItemText(listBox1.SelectedItems[i]);
    
                    Controls.Add(LFilter[i]);
    
                    //MessageBox.Show(listBox1.GetItemText(listBox1.SelectedItems[i]));
    
                    TextBox[] TFilter = new TextBox[listBox1.SelectedItems.Count];
    
                    TFilter[i] = new TextBox();
    
                    TFilter[i].Location = new System.Drawing.Point(650, y);
    
                    TFilter[i].Name = "Txt" + listBox1.GetItemText(listBox1.SelectedItems[i]);
    
                    TFilter[i].Enabled = true;
    
                    TFilter[i].Parent = this;
    
                    MessageBox.Show(button1.Parent.ToString());
    
                    Controls.Add(TFilter[i]);
    
                    y = y + 25;
    
    
                }
    
    
            }

    Vielen Dank schonmal.

  10. Ok, nach langen rumwurschteln hab ichs hinbekommen:

            {
    
                int i = 0;
    
                int y = 170;
    
    
                for (i = 0; i < listBox1.SelectedItems.Count; i++)
    
                {
    
                    Label[] Filter = new Label[listBox1.SelectedItems.Count];
    
                    Filter[i] = new Label();
    
                    Filter[i].Location = new System.Drawing.Point(571, y);
    
                    Filter[i].Text = "Filter " + i.ToString();
    
                    Filter[i].Name = "Filter" + i.ToString();
    
                    Controls.Add(Filter[i]);
    
                    MessageBox.Show(i);
    
                    y = y + 25;
    
                }
    
    
            }

  11. So, bin erst jetzt dazu gekommen das zu testen und habe nun auch festgestellt warum mir das mit der Eigenschaft "ID" nicht selber eingefallen ist.

    Weil ein Labelobjekt diese nicht besitzt, nur Name und dann Funktioniert das Add wieder nicht.

    Hier mal der Code den ich bisher habe:

                                for (i = 0; i < listBox1.SelectedItems.Count; i++)
    
                {
    
                    Label Filter = new Label();
    
                    Filter.Location = new System.Drawing.Point(571, 172);
    
                    Filter.Text = "Filter " + i.ToString();
    
                    Filter.Name = "Filter" + i.ToString();
    
                    Controls.Add(Filter);
    
                    MessageBox.Show(i.ToString());
    
                }

  12. Schön guten Tag,

    ich möchte auf Klick auf einen Button eine mir nicht bekannte Menge (Anzahl an selektierten werten in einer Listbox) an Label Objekten erzeugen.

    Mir fehlt aber irgendwie der Punkt wo ich ansetzen soll, kann mir nicht recht vorstellen wie das funktionieren soll.

    Wenn es geht sollen die Labelbezeichnung den werten in der Listbox entsprechen.

    Schonmal vielen dank für die Hilfe.

  13. Vieleicht darf ich noch kurz das Ergebniss Präsentieren:

    private void Form1_Load(object sender, EventArgs e)
    
            {
    
                RegistryKey Key = Registry.LocalMachine.OpenSubKey("SOFTWARE\\ODBC\\ODBC.INI\\ODBC Data Sources");
    
                int z;
    
    
                for (z = 0; z < Key.GetValueNames().Length; z++)
    
                {
    
                    comboBox1.Items.Add(Key.GetValueNames().GetValue(z).ToString());
    
                }
    
    
            }

    Das gibt mir jetzt in einer ComboBox alle ODBC-Datenquellen wieder die man auch Unter [start] - [systemsteuerung] - [Verwaltung] - [Datenquellen (ODBC)] - [system-DNS] findet.

    Vielen Dank für eure Hilfe. ;)

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...