Grafiken für Cursor

  • VB.NET

Es gibt 29 Antworten in diesem Thema. Der letzte Beitrag () ist von hal2000.

    Grafiken für Cursor

    Hi,

    gibt es eine Möglichkeit dem Cursor Grafiken oder ähnliches zuzuweisen, statt den langweiligen vorgefertigten?

    wenn ich dem Cursor eine normale Bitmap zuweisen will heißt es:

    unzulässige Konvertierung von Bitmap noch Cursor


    geht das irgendwie, und gibt es seiten wo man Linzenzfrei solche Cursors downloaden kann?

    ich bin für jede Hilfe dankbar Gruß EInsteiger
    und wie?

    des isch doch blöd, wenn ich immer etwas wie ne Picturebx mit dem Cursor rumschlepp, außerdem klickt er dann niemehr auf Buttons oder so, weil dann immer nur des PictureBox-Click Event ausgeführt wird

    Gruß Einsteiger
    ich habe es jetzt so gemacht:

    Dim x As New Cursor(GetType(My.Resources.Resources), "boss.ico")
    (bossd heißt mein icon, dass in den Resourcen ist (mein Profilbild))

    Fehler: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

    Was soll das heißen?
    und was muss ich ändern?

    Gruß Einsteiger
    @ blaze:

    habe es mit und ohne .ico probiert und habe es auch mit Cursordateien probiert
    klappt aber net immer des mit der Objektinstanz

    @ jvbsl:

    kommt schon vorm debugging der Fehler:
    Fehler bei der Überladungsauflösung, da keine zugreifbare "New" mit diesen Argumenten aufgerufen werden kann:
    "Public Sub New(buffer() As Byte)": Der Wert vom Typ "System.Drawing.Icon" kann nicht in "1-dimensionales Array von Byte" konvertiert werden.
    "Public Sub New(capacity As Integer)": Der Wert vom Typ "System.Drawing.Icon" kann nicht in "Integer" konvertiert werden.

    Gruß Einsteiger
    Ok dann geht meins gar nicht, ich dachte, dass du da einen Byte-Array zurückbekommst und nicht das Icon...Hast du als Dateiendung auch .cur?! Denn dann wird es evtl. nicht als Icon übergeben...:

    VB.NET-Quellcode

    1. New Cursor(DirectCast(My.Resources.ResourceManager.GetObject("Cursor"),IO.Stream))

    Aber genauso dürfte es mit dem Code von ~blaze~ auch gehen
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    wenn ich es mit einer Cursor-Datei mache kommt das:
    Das Objekt des Typs "System.Byte[]" kann nicht in Typ "System.IO.Stream" umgewandelt werden.

    bei einer Icon-datei das:
    Das Objekt des Typs "System.Drawing.Icon" kann nicht in Typ "System.IO.Stream" umgewandelt werden.


    ~blaze~ schrieb:

    Du musst das 1. schon als Cursor ablegen und 2. die Extension weglassen.


    was muss ich da noch machen?
    danke für eure bisherige Hilfe
    Gruß Einsteiger
    als Cursor, dann kannst du das mit dem MemoryStream verwenden...

    Und beim Stream hab ichs nicht beachtet: GetStream anstelle von GetObject...

    was muss ich da noch machen?

    Wie sieht den dein Code versuch von blaze aus?! Hast du da die Dateiendung oder nicht?!
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    mit dem von blaze:

    VB.NET-Quellcode

    1. Dim x As New Cursor(GetType(My.Resources.Resources), "delete")

    VB.NET-Quellcode

    1. Dim x As New Cursor(GetType(My.Resources.Resources), "delete.cur")

    VB.NET-Quellcode

    1. Dim x As New Cursor(GetType(My.Resources.Resources), "boss")

    VB.NET-Quellcode

    1. Dim x As New Cursor(GetType(My.Resources.Resources), "boss.ico")

    (delete ist eine Cursor-Datei, boss ein Icon)

    klappt alles nicht,


    GetStream statt GetObjekt:

    bei dem:

    VB.NET-Quellcode

    1. Dim x As New Cursor(DirectCast(My.Resources.ResourceManager.GetStream("boss.ico"), IO.Stream))

    kommt das:
    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.

    bei dem:

    VB.NET-Quellcode

    1. Dim x As New Cursor(DirectCast(My.Resources.ResourceManager.GetStream("boss"), IO.Stream))

    das:
    Die Ressource "boss" ist kein Stream. Rufen Sie GetObject auf.

    bei dem:

    VB.NET-Quellcode

    1. Dim x As New Cursor(DirectCast(My.Resources.ResourceManager.GetStream("delete"), IO.Stream))

    das:
    Die Ressource "delete" ist kein Stream. Rufen Sie GetObject auf.

    und bei dem:

    VB.NET-Quellcode

    1. Dim x As New Cursor(DirectCast(My.Resources.ResourceManager.GetStream("delete.ico"), IO.Stream))

    das:
    Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.


    jvbsl schrieb:

    als Cursor, dann kannst du das mit dem MemoryStream verwenden...

    Hä??...


    ich blick gar nix mehr

    Gruß Einsteiger