Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 18:30

Dobrý večer, snažím se o to vzít si data z xml a vypsat je do notifyicon v bubline. Vždy narazím na to, že vše co pracuje s xml a vytahuje z něj data, tak se opakuji vždy vypisujou v konzole. Jak to udělat aby sem je vypsal do zmíněného pole?

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Xml;

namespace Dog
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void konecToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            notifyIcon1.ShowBalloonTip(1000);
        }

        private void menu1ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            this.Hide();
            WindowState = FormWindowState.Normal;
            notifyIcon1.ShowBalloonTip(50,"Informace ze stránek","Tohle ti oznamuji\nJak se jinak máš?",ToolTipIcon.Info);
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            this.Hide();
            WindowState = FormWindowState.Normal;
            notifyIcon1.ShowBalloonTip(50,"Informace ze stránek","Tohle ti oznamuji\nJak se jinak máš?",ToolTipIcon.Info);
        }
    }
}

Děkuju moc

 
Odpovědět
28.11.2013 18:30
Avatar
Odpovídá na Frestyle
Jakub Lásko[Saarix]:28.11.2013 19:09

Stačí si vytvořit proměnnou typu string kam budeš ukládat data (text) z XML a pak při zobrazení bubliny dej onen string do jejího parametru a je hotovo. ;)

Nahoru Odpovědět
28.11.2013 19:09
Časem je vše možné.
Avatar
Frestyle
Člen
Avatar
Odpovídá na Jakub Lásko[Saarix]
Frestyle:28.11.2013 19:13

Vím, že Vám to přijde jednoduché, ale já stím teprve začínám. Co je proměna a určitou představu díky znalosti php mám, ale nevím jak by měl zápis vypadat. Děkuju

 
Nahoru Odpovědět
28.11.2013 19:13
Avatar
Odpovídá na Frestyle
Jakub Lásko[Saarix]:28.11.2013 19:16

Vypadalo by to asi takto:

private string Content;

private void Form1_Load(object sender, EventArgs e)
         {
             this.Hide();
             WindowState = FormWindowState.Normal;
             notifyIcon1.ShowBalloonTip(50,"Informace ze stránek", Content,ToolTipIcon.Info);
         }

Tímto by jsi do bubliny zobrazil text z proměnné typu string, ale do té proměnné typu string budeš muset nejprve nahrát obsaht z toho XML souboru.

Na to bych doporučil místní tutoriály -> http://www.itnetwork.cz/…ni-xml-saxem

Editováno 28.11.2013 19:17
Nahoru Odpovědět
28.11.2013 19:16
Časem je vše možné.
Avatar
Frestyle
Člen
Avatar
Odpovídá na Jakub Lásko[Saarix]
Frestyle:28.11.2013 19:20

To je prdel o_O
Přesně tohle jsem si dal do oblíbených :) On mě ten smích za chvilku přejde až to tam začnu dodávat. Za chvilku určitě napíšu, že mi to nejde :(

Moc děkuju

 
Nahoru Odpovědět
28.11.2013 19:20
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 19:31

Je to tady. Jsem to tam vložil a jen mi to ukazuje chyby.

Error   1       Expected class, delegate, enum, interface, or struct    C:\Users\admin\Desktop\test\Form1.cs    13      13      Dog
Editováno 28.11.2013 19:33
 
Nahoru Odpovědět
28.11.2013 19:31
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 19:46

Máte někdo chuť si u mě zařádit na pc skrz vzdálenou plochu prostřednictvím Team Viewer?

 
Nahoru Odpovědět
28.11.2013 19:46
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na Frestyle
Theodor Johnson:28.11.2013 19:47

ukazuje ti to přesně místo kde máš chybu, tady nejsou věštci a nevidíme ti do kódu

Nahoru Odpovědět
28.11.2013 19:47
Mo8ilε 15 Ѐλđ
Avatar
Frestyle
Člen
Avatar
Odpovídá na Theodor Johnson
Frestyle:28.11.2013 19:48

Omlouvám se. Odkazuje to na tohle: private string Content;

 
Nahoru Odpovědět
28.11.2013 19:48
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Frestyle
Petr Nymsa:28.11.2013 19:49

Jaký má přesně smysl dávat načtené XML do NotifyIcon ?

Nahoru Odpovědět
28.11.2013 19:49
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na Frestyle
Theodor Johnson:28.11.2013 19:50

protože stringy se nedávají mimo třídu

Nahoru Odpovědět
28.11.2013 19:50
Mo8ilε 15 Ѐλđ
Avatar
Frestyle
Člen
Avatar
Odpovídá na Theodor Johnson
Frestyle:28.11.2013 19:54

Super, tak jsem pokročil. Teď mám dvě nové :D

Error   1       Program 'C:\Users\admin\Desktop\test\obj\x86\Debug\Dog.exe' has more than one entry point defined: 'Dog.Program.Main()'.  Compile with /main to specify the type that contains the entry point. C:\Users\admin\Desktop\test\Program.cs  13      21      Dog

Error   2       Program 'C:\Users\admin\Desktop\test\obj\x86\Debug\Dog.exe' has more than one entry point defined: 'XmlSaxCteni.Program.Main(string[])'.  Compile with /main to specify the type that contains the entry point. C:\Users\admin\Desktop\test\Program.cs  42      21      Dog

Oba mě odkazují na: static void Main(string[] args)

 
Nahoru Odpovědět
28.11.2013 19:54
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na Frestyle
Theodor Johnson:28.11.2013 20:04

Nejspíš tam máš víc jak jednu metodu "static void Main(string[] args)"

Nahoru Odpovědět
28.11.2013 20:04
Mo8ilε 15 Ѐλđ
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 20:10

To ano, ale tu tam potřebuju taky. Hmm, takže to spojit nejde.

 
Nahoru Odpovědět
28.11.2013 20:10
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na Frestyle
Theodor Johnson:28.11.2013 20:11

Měl by jsi si nejdříve přečíst pár tutoriálů, jinak ti to bude pořád hlásit chyby kterým nebudeš rozumět

Nahoru Odpovědět
28.11.2013 20:11
Mo8ilε 15 Ѐλđ
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 20:20

Já tomu upřímně vůbec nerozumím. Vím jen, že když se navzájem perou, tak je nereálný to skombinovat a tím tedy můj vývoj programu končí. Snažím se to udělat týden, tak jsem smířenej, že to nerozchodím. Děkuju moc za Váš čas. Já udělal vše aby jsem to vytvořil, ale už vím, že tyhle dvě věci nejdou. Přeji příjemný večer

 
Nahoru Odpovědět
28.11.2013 20:20
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Frestyle
Petr Nymsa:28.11.2013 20:23

Ale houby nejde, jenom tomu nerozumíš a očividně se to nechceš naučit. Konkrétně ale zde máme obrovský kvalitní seriál o C#, jak pro začátečníky tak i pokročilé ;)

Editováno 28.11.2013 20:23
Nahoru Odpovědět
28.11.2013 20:23
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Odpovídá na Frestyle
Josef Kuchař - Pepa489:28.11.2013 20:26

Tak místo "static void Main(string[] args)" to hoď do konstruktoru.

Nahoru Odpovědět
28.11.2013 20:26
2x piš, jednou debuguj
Avatar
Frestyle
Člen
Avatar
Odpovídá na Petr Nymsa
Frestyle:28.11.2013 20:30

Nechci? Já se tím mořím vážně týden. Vzteky jsem byl 5 vteřin u vyhození pc z okna. Spíš za ten týden jsem si vytvořil ochranou bublinu na nervy. Jinak by sem letěl bud já nebo počítač a oboje mám rád :)

Prošel jsem tolik příkladů a řešeních, že div mám cévku ještě celou. Není to lenost, ale smíření. Když projdete 100 stránek za den ani se pořádně nevyspíte a jste furt na bodě nula, tak po týdnu buď jste cvok nebo flegmouš.

 
Nahoru Odpovědět
28.11.2013 20:30
Avatar
Frestyle
Člen
Avatar
Odpovídá na Josef Kuchař - Pepa489
Frestyle:28.11.2013 20:31

Co to je? Trošku česky ;(
Vážně, jste tady moc hodný/vstřícný, ale já jsem už unavenej.

Editováno 28.11.2013 20:33
 
Nahoru Odpovědět
28.11.2013 20:31
Avatar
Josef Kuchař - Pepa489:28.11.2013 20:36

Už se mě nechce odpovídat na takový primitivní otázky, přečti si něco o c# ne zde na devbooku

Nahoru Odpovědět
28.11.2013 20:36
2x piš, jednou debuguj
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Frestyle
Petr Nymsa:28.11.2013 20:39

Nevěřím že po stovkách článků a X hodin jsi stále na bodě 0. Kdo ví co jsi četl. Podívej se zde na naše články a po 4 článcích budeš schopný porozumět jak fungují proměnné, typový systém, podmínky, cykly.

Navíc je celkem nesmysl se pokoušet vytvořit tento program (ačkoliv stále nevím co přesně má dělat), bez znalostí

Nahoru Odpovědět
28.11.2013 20:39
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 20:46

Program má číst ze souboru xml, kde by bylo potom zda není nějaká událost a měl ukazovat v bublině informace. Jsem chtěl docílit bud registrem nebo formulářem přihlášení a ověřovat metodou get zda uživatel existuje a případně vypsat data. Bylo mi řečeno, že to není nic těžkého, tak jsem se do toho pustil, ale když se mi podařilo vypsat data z xml, tak to bylo vždy do konzole a tudíš nebylo možné to dát do vysněné bubliny. Tak jsem asi tedy úplně blbej. Protože jsem nepochytil skutečně nic

 
Nahoru Odpovědět
28.11.2013 20:46
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Frestyle
Petr Nymsa:28.11.2013 20:52

A tímhle hokusem pokusem nepochytíš dál o moc víc ;). Projdi si seriál a bude ti to jasnější. Načtená data si někam uložíš - do listu<string>, pole, lépe do nějakých objektů a potom s nimi naložíš dal jak budeš potřebovat -> zedituješ a uložíš, zobrazíš, pošleš do databáze, cokoliv

Nahoru Odpovědět
28.11.2013 20:52
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 20:59

Já právě udělal pokrok :)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
using System.Xml;
using System.Text;

namespace Dog
{
    static class Program
    {
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());


            List<Uzivatel> uzivatele = new List<Uzivatel>();
            using (XmlReader xr = XmlReader.Create(@"D:/test.xml"))
            {
                string jmeno = "";
                int vek = 0;
                DateTime registrovan = DateTime.Now;
                string element = "";
                while (xr.Read())
                {
                    // načítáme element
                    if (xr.NodeType == XmlNodeType.Element)
                    {
                        element = xr.Name; // název aktuálního elementu
                        if (element == "uzivatel")
                        {
                            vek = int.Parse(xr.GetAttribute("vek"));
                        }
                    }
                    // načítáme hodnotu elementu
                    else if (xr.NodeType == XmlNodeType.Text)
                    {
                        switch (element)
                        {
                            case "jmeno":
                                jmeno = xr.Value;
                                break;
                            case "registrovan":
                                registrovan = DateTime.Parse(xr.Value);
                                break;
                        }
                    }
                    // načítáme konec elementu
                    else if ((xr.NodeType == XmlNodeType.EndElement) && (xr.Name == "uzivatel"))
                        uzivatele.Add(new Uzivatel(jmeno, vek, registrovan));
                }
            }

            // výpis načtených objektů
            foreach (Uzivatel u in uzivatele)
            {
                Console.WriteLine(u);
            }
            Console.ReadKey();
        }
    }
}

Teď mě to hází chyba tady: Warning 1 Field 'Dog.Form1.Content' is never assigned to, and will always have its default value null C:\Users\admin\Des­ktop\test\For­m1.cs 16 24 Dog

notifyIcon1.ShowBalloonTip(50,"Informace ze stránek",Content,ToolTipIcon.Info);

Možná když se opraví tohle, tak to pojede ;)

 
Nahoru Odpovědět
28.11.2013 20:59
Avatar
Odpovídá na Frestyle
Neaktivní uživatel:28.11.2013 21:01

Možná se ti tady snaží všichni pomoct a ty je možná ignoruješ. To co děláš nemá zatím žádný smysl, protože nemáš absolutně tušení, co se v tom programu děje. S nějakými základy jsme ti schopni pomoct, ale takhle ne.

Nahoru Odpovědět
28.11.2013 21:01
Neaktivní uživatelský účet
Avatar
Theodor Johnson
Tvůrce
Avatar
Odpovídá na Frestyle
Theodor Johnson:28.11.2013 21:06

Nepojede, hrabeš se v souboru který by začátečníci neměli vůbec vidět. Ten kód rveš úplně do jiný třídy

Nahoru Odpovědět
28.11.2013 21:06
Mo8ilε 15 Ѐλđ
Avatar
Frestyle
Člen
Avatar
Odpovídá na Neaktivní uživatel
Frestyle:28.11.2013 21:06

Snažím se jen dodělat co jsem začal. Cítím, že se to otočilo a jsem kousek.

 
Nahoru Odpovědět
28.11.2013 21:06
Avatar
Frestyle
Člen
Avatar
Odpovídá na Theodor Johnson
Frestyle:28.11.2013 21:09

Tak díky. Konečně se mi vrátila naděje na úspěch a bleskem je pryč. Tak kam to mám dát?

 
Nahoru Odpovědět
28.11.2013 21:09
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Frestyle
Petr Nymsa:28.11.2013 21:10

NE NE A NE ! Máš vytvořenou Formulářovou aplikaci a spoustíš další kód v Program.cs který slouží pro inicializaci Formuláře. Pokud chceš čistě konzolovou alikaci založ projekt s Console Application.

Takže vlastně absolutně nevíš co děláš. Jen tak zběžné otázky
Co je List ?
XmlReader ?

Btw není to náhodou ze zdejšího článku ?
Takže víš co je třída Uživatel ? resp. víš co je třída ? instance třídy ? co dělá blok using ?

Jsi začátečník, vykašli se na to a začni odznova a pomalu s konzolovýma aplikacema ;)

Nahoru Odpovědět
28.11.2013 21:10
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
Frestyle
Člen
Avatar
Frestyle:28.11.2013 21:18

třída using jsou používané knihovny. xmlreader mi otevírá soubor xml. Něco málo vim, ale jestli jsem se seknul i vtomhle, tak nevím nic. Konzolová aplikace je pěkná, ale nepoužitelná. Uživateli nemůžu dát výsledky v konzole.

 
Nahoru Odpovědět
28.11.2013 21:18
Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na Frestyle
Petr Nymsa:29.11.2013 8:03

Using není třída. XmlReader je třída sloužící ke čtení XML souborů. Konzolová aplikace je také velmi použitelná. Neumíš základy, tj nejsi schopen napsat normálně běžící aplikaci ve Formech. Nebo rozumíš jak fungují Formy ? Třídy, události ? Umíš deklarovat třídu, konstruktor, její metody, privátní položky, vlastnosti ?

Ještě jednou, začni se základama. Tímhle stylem stejně uživateli neposkytneš žádnou normální a běžící aplikaci. Máš to celé špatně.

Nahoru Odpovědět
29.11.2013 8:03
Pokrok nezastavíš, neusni a jdi s ním vpřed
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 32 zpráv z 32.