Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Dynamisches Bild aus dem Internet auf der GUI

Empfohlene Antworten

Veröffentlicht

hi jungs, ich schreibe mir grade ein programm, auf dem ein bild aus dem internet angezeigt werden soll. dieses bild verändert sich aber alle 15minuten im netz, und soll dann auch alle 15min auf meiner gui neu geladen werden.

ich habe bereits versucht eine picturebox mit der url zuverlinken, aber dann läd er sich das bild auf den pc und bezieht sich darauf.

das bild soll aber eigentlich genau das zeigen was auch grade im netz ist.

(das bild soll direkt in der gui angezeigt werden! ohne link etc.. )

danke vorab

gruß majestix

schau dir mal die Klasse HttpWebRequest an.

Dort kannst du ein WebRequest machen, und anhand des Response-Streams kannst du dann ein Image-Object erstellen und an deine Picture-Box übergeben.

Wenn du irgendwo nicht wieter kommst einfach fragen ;)

hmm also sagen wir ich möchte dieses bild anzeigen:

http://www.wetteronline.de/startseite/includes/operationell/grafiken/wetter_aktuell_DL.gif

geht das dann in etwa so ?


  Dim myWebRequest As WebRequest = WebRequest.Create("http://www.wetteronline.de/startseite/includes/operationell/grafiken/wetter_aktuell_DL.gif")

    Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

    Dim myReceiveStream As Stream = myWebResponse.GetResponseStream()

und aus dem stream bekomme ich das .gif ? schnall das nicht ganz ;)

(irgendwie geht edit grad net.. )

bisher habe ich nur beispiele gefunden, wie ich texte damit auslese, aber leider keine bilder.. oder muss ich dann beim streamreader was anderes als ASCI angeben ?

Hoffe du kannst mit C# was anfangen ;)

Naja so:


        WebRequest m_req = null;

        public Form1()

        {

            InitializeComponent();

        }


        private void button1_Click(object sender, EventArgs e)

        {

            try

            {

                m_req = WebRequest.Create(textBox1.Text);

                m_req.BeginGetResponse(new AsyncCallback(OnResponse), null);

            }

            catch (Exception ex)

            {

                MessageBox.Show(ex.ToString(), ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error);

            }

        }


        private void OnResponse(IAsyncResult res)

        {

            WebResponse response = m_req.GetResponse();


            Image img = Image.FromStream(response.GetResponseStream());


            pictureBox1.Image = img;

        }

hi, nun habe ich folgendes:


  Dim myWebReq As WebRequest = WebRequest.Create("http://www.blaal.de/bla.gig")

    Dim myWebResp As WebResponse = myWebReq.GetResponse()

    Dim sr As New StreamReader(myWebResp.GetResponseStream)


  Public Sub OnResponse(ByVal res As IAsyncResult)

        Dim img As Image

        myWebResp = myWebReq.GetResponse()

        img = Image.FromStream(myWebResp.GetResponseStream())

        picTest.Image = img

    End Sub


 myWebReq.BeginGetResponse(New AsyncCallback(OnResponse), null)


die zeile myWebReq.BeginGetResponse(New AsyncCallback(OnResponse), null) mag er nicht, er bringt mir folgende meldung:

Sytem.AsyncCallback' is a delegate type. Delegate construction permits only a single Adress of expression as an

argument list. Often an AdressOF expression can be used instead of a delegate construcion

ich habe es noch auf die art versucht:

Dim remoteUri As String = "http://www.blaaa/blaa.gif"

Dim vWetterpic As String = "wetter.gif"

Dim client As New WebClient

client.DownloadFile(remoteUri, vWindowsDir & "\" & vWetterpic)

picTest.Image = System.Drawing.Image.FromFile(vWindowsDir & "\" & vWetterpic)

aber da bringt er mir eine proxy meldung.. kann das daran liegen, das ich hier in der firma ein proxy benutze? und zuhause müsste das dann gehen? warum übernimmt er nicht einfach die normalen einstellungen ?

Edit:

ich halte bei der stelle:

Dim myWebResp As WebResponse = myWebReq.GetResponse()

die meldung "The remote server returned an error: (407) Proxy Authenticatio Required"

ich habs hinbekommen mit:


 Public Sub OnResponse()


        ' Obtain the Proxy Prperty of the  Default browser. 

        myProxy = CType(myWebReq.Proxy, WebProxy)


        ' Create a new Uri object.

        Dim newUri As New Uri("http:\\www.poxy...:8080")


        ' Associate the new Uri object to the myProxy object.

        myProxy.Address = newUri


        ' Create a NetworkCredential object and is assign to the Credentials property of the Proxy object.

        myProxy.Credentials = New NetworkCredential("test1", "test1")

        myWebReq.Proxy = myProxy


        Dim myWebResp As WebResponse = myWebReq.GetResponse()

        Dim sr As New StreamReader(myWebResp.GetResponseStream)

        Dim img As Image

        myWebResp = myWebReq.GetResponse()

        img = Image.FromStream(myWebResp.GetResponseStream())

        picTest.Image = img

    End Sub

danke für die hilfe !!!

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.