EasyGlass Version 1.0

    • Beta

    Es gibt 18 Antworten in diesem Thema. Der letzte Beitrag () ist von SirGiuseppe.

      EasyGlass Version 1.0

      Beschreibung:
      Diese kleine Lib soll es ermöglichen, ohne viel Aufwand eine AeroGlass-Form zu erstellen, auf der normale Steuerelemente, wie z.B. ein Button, eine ListView etc. hinzugefügt werden können (also auch solche, die kein CompatibleTextRendering unterstützen) und - im Gegensatz zur Windowseigenen Methode - korrekt angezeigt werden. Da sie von Windows.Forms erbt, kann sie wie jede andere Form im Designer verwendet werden. Wie sie verwendet werden kann, ist (für diejenigen, die es vl. noch nicht wissen) in einer genaueren (bebilderten) Beschreibung weiter unten erklärt.

      Wie verwende ich diese DLL?
      1. Im Menü "Projekt" > "Windows Form hinzufügen auswählen"
      2. Unter "Installierte Vorlagen" > "Gemeinsame Elemente" > "Windows Forms" > "Geerbtes Formular" auswählen und auf "Hinzufügen" klicken. Ggf. Kann ein anderer Name eingegeben werden.
      3. Im Nächsten Dialogfeld auf "Durchsuchen..." klicken.
      4. Anschließend die zuvor heruntergeladene "EasyGlass.dll" auswählen.
      5. "EasyGlassForm" auswählen und mit "OK" bestätigen.
      6. Nun können wie gewohnt Steuerelemente hinzugefügt werden,.
      7. Fertig!

      Verwendete Programmiersprache und IDE:
      Visual Basic .NET (IDE: VS 2010 Pro)

      Systemanforderungen:
      • .NET Framework 2.0 oder höher
      • Windows Vista oder höher mit aktiviertem Aero Glass (Die Form kann auch ohne Aero Glass verwendet / designt werden, allerdings wird dann beim Ausführen als Hintergrundfarbe die unter "NoAeroBackColor" eingestellte Hintergrundfarbe verwendet)


      Download:
      EasyGlass.dll

      Lizenz/Weitergabe:

      EasyGlass von BjöNi steht unter einer Creative Commons Namensnennung-NichtKommerziell-KeineBearbeitung 3.0 Deutschland Lizenz.

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „BjöNi“ ()

      kann man damit nur die Ganze Form als "glassig" darstellen lassen?
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


      vb-checker schrieb:

      Macht die Form auch mehr, als bei allen Controls, falls vorhanden, UseCompatibleTextRendering auf true zu setzen?
      Allerdings.

      vb-checker schrieb:

      Also welche Controls werden korrekt angezeigt?
      Alle, sofern sich die Hintergrundfarbe des entsprechenden Controls auf transparent festlegen lässt.
      Einziges mir derzeit bekanntes Problem ist bei einem Control, das scharfe Abgrenzungen zwischen Transparent und nicht-transparent hat (z.B. nur ein px Schwarz, dann wieder einige px transparent, wie es bei einem Label der Fall ist). Teilweise wird dann der Schwarze bereich nicht korrekt ausgeschnitten.

      @Knato: und @CatchTheBird:: Welche Version von VB / VS habt ihr? Ich tippe mal auf irgendeine Express-Edition. Gebt mal in die Suche des Hinzufügen-Dialogs oben rechts "Geerbt" ein. Spätestens dann sollte es zu finden sein.
      Falls ihr es gar nicht findet, macht folgendes: Fügt unter My Project > Verweise manuell einen Verweis auf die DLL hinzu. Anschließend fügt ihr eine normale Windows Form hinzu, geht in deren Designer-Quelltext und ersetzt dort ganz oben

      VB.NET-Quellcode

      1. Inherits System.Windows.Forms
      durch

      VB.NET-Quellcode

      1. Inherits EasyGlass.EasyGlassForm
      .
      Und welche Vorteile gibt es gegenüber UseCompatibleTextRendering? Kann man die Rahmen selbst bestimmen, oder ist nur Full Aero drin?
      „Was daraus gefolgert werden kann ist, dass jeder intelligentere User sein Geld lieber für Bier ausgibt, um einen schönen Rausch zu haben, und nicht dieses Ranzprodukt.“

      -Auszug aus einer Unterhaltung über das iPhone und dessen Vermarktung.
      Dass es einige Controls gibt, die dies nicht unterstützen. Bsp. ListView etc.

      Btw: Ich verwende nirgendwo in der Lib UseCompatibleTextRendering.
      So, ich kann die Form jetzt nutzen ^^
      Gibts da irgendwelche speziellen Einstellungen/Konfigurations-Optionen, von denen man wissen sollte?
      Aber die Library gefällt mir sehr gut!

      Wäre es eigentlich ohne diese DLL viel schwerer gewesen, das per Code zu machen?

      Werd ich gleich in mein neues Projekt einbauen. Natürlich mit Namens-Nennung ;)
      Sehr geil, nach sowas hab ich zwar nicht gesucht aber für manche sehr nützlich. Daraus habe ich mal eben das gebastelt, kennen höchstwahrscheinlich schon die meisten. Habe das jetzt mit einem Panel gemacht, es wäre auch cool, wenn du sowas selbst als Control hinzufügen würdest, dass sich der Lib bzw. dann der Form anpassen würde.
      Bilder
      • Unbenannt2.png

        37,84 kB, 559×481, 412 mal angesehen

      backtothetoast schrieb:

      Sehr geil, nach sowas hab ich zwar nicht gesucht aber für manche sehr nützlich. Daraus habe ich mal eben das gebastelt, kennen höchstwahrscheinlich schon die meisten. Habe das jetzt mit einem Panel gemacht, es wäre auch cool, wenn du sowas selbst als Control hinzufügen würdest, dass sich der Lib bzw. dann der Form anpassen würde.


      Das wollte ich auch noch machen :D
      dürfte ich fragen, was an deiner .dll jetzt anders ist als bei diesem Code?
      tech.reboot.pro/showthread.php?tid=2750

      Hat deine irgendwelche speziellen Vorteile?
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


      Das ist mir klar, das gefällt mir ja auch an der .dll.

      Jedoch finde ich dass es nichts neues ist. Wer sowas wirklich nicht kennt möge bitte einfach "vb.net glass effect" googlen.
      Trotz allem, ich blicke nicht ganz durch, was neben der Vereinfachung deine .dll bietet. (Hab sie nicht gedownloadet ^^)

      Bitte um erläuterung.
      Desweiteren entschuldige ich mich, falls ich mich "aufdringlich" verhalte.
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!


      @Gather: Diesen Code, den du gepostet hast, gibt es tatsächlich x-tausend mal im Netz. Und es wäre auch wirklich gar nichts neues. Aber hast du jemals probiert, auf einen Code, wie z.B. der, der von dir gepostet wurde, z.B. eine Listview oder ein beliebiges anderes Element, das CompatibleTextRendering nicht unterstützt, draufzupacken? Alles, was auf der Form schwarz ist, wird als transparent definiert, und alle Grautöne dazwischen als teils transparent. Probiers einfach mal auf, und du wirst sehen, dass es ganz schön schei*e aussieht, wenn statt schwarzem Text auf einmal Glass-Effect auf einem Bereich von ca. 1px auftaucht, wo er gar nicht sein sollte... Genau das verhindert meine DLL.
      Najo, ok ich hab da zwar meine eigenen Wege dies zu umgehen (die "relativ" simple sind und dies ohne .dll), jedoch anscheinend hilft deine .dll Leuten.

      Auf jeden Fall, weiter so! :thumbup:
      Mfg: Gather
      Private Nachrichten bezüglich VB-Fragen werden Ignoriert!