Delphi-PRAXiS
Seite 1 von 8  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Runde, ovale, diagonale, geschwungene oder sonstwie Buttons (https://www.delphipraxis.net/78959-runde-ovale-diagonale-geschwungene-oder-sonstwie-buttons.html)

Sunlight7 13. Okt 2006 20:01


Runde, ovale, diagonale, geschwungene oder sonstwie Buttons
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo DPler!

Eigentlich wollt ich nur Wissen, ob meine Idee funktionieren würde, und heraus kam diese Komponente...

Man kann in den Ressourcen die Bitmaps hinterlegen, welche dann als Buttons dargestellt werden.
Auf Deutsch gesagt, man zeichnet die Buttons, und Kompo setzt es um.
Also das ist jetzt schwierig zu beschreiben, am besten, Ihr guckt Euch den Screenshot mal an.

Geschrieben ursprünglich mit Delphi 2, die Komponente zum Download ist jetzt aber für Delphi 5.0+

Neu in V1.5:
  • Speed Optimierung, besonders für große Bitmaps
  • Eigenschaften:
  • EnabledStr & PushedStr: Zur komfortablen Nutzung im OI und zur einfachen Speicherung und Wiederherstellung von Konstellationen für Enabled bzw. Pushed.
  • Bugs ausgebügelt.

Neu in V1.4:
  • Eigenschaften: PushedButtons & Pushed

V1.3:
  • Ressourcen Bitmaps entfernt
  • Bitmaps zum OI hinzugefügt, ich hoffe ihr seid jetzt glücklicher :wink:

V1.2:
  • Eigenschaft Enabled für die Buttons
  • Bugfixes im Design-Modus
  • Bugfixes mit gedrückter Maustaste
  • Timer entfernt (D5+)

V1.1b:
  • "Schnelles Maus darüber ziehen Problem behoben"
  • TransparentColor:
    • Ein beliebiger Farbwert, oder:
    • clNone: Keine Transparenz
    • clBackground: Die Farbe von Pixels[0, 0] wird verwendet.

Hint:
F: Ist doch eine Standard Eigenschaft?
A: Jein, ich habe aus der Eigenschaft eine StringList gemacht.
Die 0. Zeile bleibt leer, die restlichen Zeilen stehen für den
jeweiligen Button.

ResStandard, .., ResTouchZones
Hier können die Ressourcennamen eingegeben werden, die dann
geladen werden.

Ich weiß, das ist noch nicht das Gewünschte...

Viel Spaß damit!

PS: Wäre schön, wenn Ihr einen Screenshot posten würdet, was ihr damit gemacht habt.

Zitat:

Zitat von Delphi 5.0 Compiler
interner Fehler C1569

Das hat mich was genervt... :evil: :evil: :evil:

Edit: Demo Exe erneuert.

newuser01 13. Okt 2006 20:22

Re: Runde, eckige, geschwungene oder sonstwie Buttons
 
Fehler: RoundButton.res nicht gefunden :gruebel:

Sunlight7 13. Okt 2006 20:37

Re: Runde, eckige, geschwungene oder sonstwie Buttons
 
Ja die muß man erst machen...

Aber ich könnte mal meine als Beispiel hinzufügen?

newuser01 13. Okt 2006 20:40

Re: Runde, eckige, geschwungene oder sonstwie Buttons
 
kannst du machen

Sunlight7 13. Okt 2006 20:45

Re: Runde, eckige, diagonale, geschwungene oder sonstwie But
 
Hmm, wo hab ich die bloß wieder hingespeichert? :gruebel:

Ach da is sie ja, hier bitte, oben zu finden. :zwinker:

dino 13. Okt 2006 20:59

Re: Runde, eckige, diagonale, geschwungene oder sonstwie But
 
wenn man nen button nach dem klick loslässt, ist die Maus doch immernoch drauf...
trotzdem wird der button icht mehr so markiert

Namenloser 13. Okt 2006 21:03

Re: Runde, eckige, diagonale, geschwungene oder sonstwie But
 
Zitat:

Zitat von Sunlight7
PPS: Kann mal wer probieren, ob diese Funktion in neueren Delphi Versionen auch nen internen Fehler verursacht?!
Delphi-Quellcode:
function GetPixel(Bitmap:TBitmap; const x, y:Integer):LongInt;
   var sl:PByteArray;
begin
   sl:=Bitmap.ScanLine[y];
   Result:=RGB(sl[(x * 3)+2],
               sl[(x * 3)+1],
               sl[(x * 3)+0]);
end;
Zitat:

Zitat von Delphi 5.0 Compiler
interner Fehler C1569

Das hat mich was genervt... :evil: :evil: :evil:

das ist jetzt mehr oder weniger ins Blaue getippt, aber könnte das vielleicht eher etwas mit dem Bitmap-Format zu tun haben?
Außerdem bin ich mir nicht sicher, ob Scanline in diesem Falle tatsächlich schneller ist als Canvas.Pixels :?

newuser01 13. Okt 2006 21:08

Re: Runde, eckige, diagonale, geschwungene oder sonstwie But
 
Funktioniert soweit ganz gut. Der Hit wäre noch wenn man die Komponente einfach auf der Form zieht die eigenen Grafiken einbinden könnte also für ButtonActive,ButtonInctive,ButtonPush und so weiter und die ASnzahl der Schaltflächen bestimmen könnte :mrgreen:

Ich weiß ich bin unverschämt :mrgreen:

Sunlight7 13. Okt 2006 21:18

Re: Runde, eckige, diagonale, geschwungene oder sonstwie But
 
Zitat:

Zitat von NamenLozer
das ist jetzt mehr oder weniger ins Blaue getippt, aber könnte das vielleicht eher etwas mit dem Bitmap-Format zu tun haben?
Außerdem bin ich mir nicht sicher, ob Scanline in diesem Falle tatsächlich schneller ist als Canvas.Pixels

Das Bitmap Format würde erst bei der Laufzeit nen Fehler machen, und es ist nicht das Problem, es sind 24 Bit.
Canvas.Pixels (Gähn) ist vieeeel langsamer.

Zitat:

Zitat von dino
wenn man nen button nach dem klick loslässt, ist die Maus doch immernoch drauf...
trotzdem wird der button icht mehr so markiert

Etwas genauer bitte, ich hab da kein Problem :gruebel:

Zitat:

Zitat von newuser01
Funktioniert soweit ganz gut. Der Hit wäre noch wenn man die Komponente einfach auf der Form zieht die eigenen Grafiken einbinden könnte also für ButtonActive,ButtonInctive,ButtonPush und so weiter und die ASnzahl der Schaltflächen bestimmen könnte.

Ja könnte man, aber dazu mußt Du erst noch überzeugungs Arbeit Leisten. :mrgreen:

Zacherl 13. Okt 2006 21:24

Re: Runde, eckige, diagonale, geschwungene oder sonstwie But
 
Zitat:

Zitat von dino
wenn man nen button nach dem klick loslässt, ist die Maus doch immernoch drauf...
trotzdem wird der button icht mehr so markiert

Etwas genauer bitte, ich hab da kein Problem :gruebel:
Er meint, dass der Button grün wird, wenn man die Maus drüberhält, beim Klicken grau wird und nach dem Loslassen grau bleibt, obwohl er wieder grün werden sollte, da die Maus ja immer noch drüber ist.

Florian


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:55 Uhr.
Seite 1 von 8  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz