Autor Beitrag
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: So 09.05.04 20:31 
Hi

Ich hab bastle zur Zeit Mal wieder (immer zwischendurch) was (ich aber aber sicher nicht verwenden werde :P) und veröffentliche jetzt mal die erste öffentliche Beta.
Es handelt sich dabei um eine von TForm abgeleitete Klasse, die es ermöglicht dem Formular einen "Skin" zu verpassen. Dazu muss eine Komponente (TXStyleControl) aufs Formular gelegt werden und im Quellcode

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
uses
  Windows, ..., StdCtrls;

type
  TForm1 = class(TForm)


in

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
uses
  Windows, ..., StdCtrls, xstyleform;

type
  TForm1 = class(TXStyleForm)


geändert werden. Nach der Auswahl einer Datei (Property OpenFile von TXStyleControl) kann das Programm gestartet werden und hat das neue Aussehen.

Das besondere (?) hierbei ist, dass das MainForm (falls vorhanden) nicht über die Titelleiste rutscht, sondern an Ort und Stelle bleibt.

Nicht funktionierende Properties:

  • AlphaBlend: Technisch unmöglich
  • AutoSize: wirkt sich nicht auf Container aus
  • BorderStyle: bsSingle: Standard (Aber man kann trotzdem die Größe ändern); bsSizeable: über Scrollbars simulierbar
  • TransparentColor: Eventuell möglich. Wenn es jmd. macht, kann er mir gerne den Code zukommen lassen und meinen ewigen Dank genießen :mrgreen:


bekannte Probleme:

  1. Ein MainMenu ist deaktiviert wenn a: die Titelleiste aktiv ist und b: das Formular aktiv ist (erst seit kurzem :-/)
  2. Das Formular wird bei Klick auf das MainMenu nicht aktiviert (hängt wohl mit 1a zusammen)


Ansonsten darf der Code frei verwendet werden, aber ein Hinweis wäre nett, außerdem sollte der Code nicht unter eigenem Namen einfach so neu veröffentlicht werden und das übliche Blaschwall.

UPDATE (13.05)
Property Position implementiert

UPDATE (14.05)
Properies Align und Enabled implementiert, Constraints kann zur Designtime gesetzt werden

UPDATE (15.05)
Constraints, WindowState und FormStyle implementiert, Extraschriftart für deaktiviertes Fenster (neues Format für Skins)

Screenshot: home.arcor.de/obbsch...reens/XStyleForm.png
Download: home.arcor.de/obbsch.../down/xstyleform.zip inkl. 3 Skins und Beispielprogramm (Package für D6)

Wer Fehler findet darf sie mir gerne aushändigen


Zuletzt bearbeitet von obbschtkuche am Sa 15.05.04 11:26, insgesamt 6-mal bearbeitet
matze
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 4613
Erhaltene Danke: 24

XP home, prof
Delphi 2009 Prof,
BeitragVerfasst: Mo 10.05.04 14:10 
cool !!! mach bloß weiter so !! die meisten leute suchen sowas schon ewig !!!

_________________
In the beginning was the word.
And the word was content-type: text/plain.
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Do 13.05.04 18:47 
obbschtkuche hat folgendes geschrieben:
Wer Fehler findet darf sie mir gerne aushändigen


bitte :D

Zitat:
BorderStyle: bsSingle: Standard; bsSizeable: über Scrollbars simulierbar


irgendwie ist das Sizeable bei mir !?!?

dann wollt ich ein Bestehendes Progg umstylen, bloß er verschiebt das ganze in die Linke ecke, wenn ich die Exe dann vergrößer, dann stimmts wieder, in dem Fall macht er aber acuh kein Close-Bild...

und wenn ich das Fenster verkleiner, flackert das.

:wink2: , Stefan

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Do 13.05.04 18:56 
StefanH hat folgendes geschrieben:
irgendwie ist das Sizeable bei mir !?!?


Im Prinzip schon, aber es gibt keine Scrollbars.



Was meinst du mit ", wenn ich die Exe dann vergrößer,"? Meinst du das Formular?

Das Flackern lässt sich leider nicht umgehen. Oder... Vielleicht doch, ich sehs mir mal an :P
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Do 13.05.04 19:04 
dann sollte man das im Prinzip auch verhindern... :roll:

Zitat:
Was meinst du mit ", wenn ich die Exe dann vergrößer,"? Meinst du das Formular?


:oops: ähja... das Formular... :roll:

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Fr 14.05.04 15:45 
So, Align funzt jetzt, Enabled auch, und bsDialog und bsSingle kann man ebenfalls als funktionierend bezeichnen.
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Fr 14.05.04 19:42 
hmm... vorhin hat er das Close-Bild nciht geladen, etz gehts wieder... komisch

Achja... Constraints wären nett :roll:

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Sa 15.05.04 11:25 
So, Constraints sind fertig, sowie FormStyle und WindowState. Die Skins haben ein neues Format, der Loader ist aber abwärtskompatibel. (Und zukünftige Versionen werden sowohl abwärtskompatibel als auch aufwärtskompatibel sein :P )
Ab dieser Version gibt es eine Extraschriftart für die Titelleiste von einem deaktiviertem Fenster.
Außerdem habe ich die Möglichkeit, die Skineinstellungen in .ini-Dateien zu speichern und daraus zu lesen entfernt, da sie nur bei der Urur-Version von Bedeutung war.
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Mo 17.05.04 16:16 
oooooooooook, nachdem ich erstmal Types aus den uses geschmissen hab, und dann noch irgendwo ein override gekillt hab, damit ich das überhaupt installen konnte, erstmal keine Contraints gesehen. Na gut, für diesen Fall hab ichs eh nicht gebraucht, und hab mir niks gedacht. Aaaaaaaber: Etz krieg ich eine Fehler meldung, dass die eigenschaft "IsDisabledCpaitonFont" (oder ka... irgendwas halt) nicht existiert :?


MfG,

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mo 17.05.04 16:18 
*shock*

Hast du es komplett neuinstalliert, in den selben Ordner, oder nur neu Compiliert und wann kommt die Fehlermeldung...? :P
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Mo 17.05.04 16:22 
Fehlermeldung: beim Starten des Proggs

Ja in den gleichen Ordner... ob ichs neu installiert hab? vermutlich schon, ich hab ja einiges probiert... ;)

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mo 17.05.04 16:43 
Du hast also das Package geöffnet und Compile (oder Kompilieren) geklickt?
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Mi 19.05.04 14:06 
nö. ich hab das in ein anderes Package gedingst, weil
Zitat:
Download: home.arcor.de/obbsch.../down/xstyleform.zip inkl. 3 Skins und Beispielprogramm (Package für D6)


:roll:

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.05.04 14:42 
Und DAS hast du neukompiliert? :P (Bzw. das alte vorher deinstalliert oder sonstwas gemacht)

Wenn der die Properties nicht findet dürfte das nämlich eigentlich nur daran liegen.
StefanH
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1144

Win XP
D5 Standard, D7 Pers, D2005 Pers
BeitragVerfasst: Mi 19.05.04 14:48 
jaaaaaaa!

_________________
"Als es noch keine Computer gab, war das Programmieren noch relativ einfach."(Edsger W. Dijkstra)
"Ich bin nicht von Sinnen, sondern ich rede wahre und vernünftige Worte." (Paulus)
O'rallY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 563



BeitragVerfasst: Mi 19.05.04 20:15 
Wieso lässt du keine Änderung am Hintergrund der Form zu?
Aber ansonsten: Gut!
Noch was: Zur Laufzeit lässt sich da Design nicht ändern?

_________________
.oO'rallY
Linux is like a tipi: No gates, no windows and a gnu-eating apache inside...
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.05.04 20:26 
Danke für das Lob :D

ähm... Hintergrund? :roll:

Style wechseln funktioniert so:

ausblenden Delphi-Quelltext
1:
2:
XStyleControl.LoadFromFile('deinstyle');
XStyleControl.Update(self, false);


Wobei das ",false" auch weggelassen werden kann, ist mehr oder weniger egal.
O'rallY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 563



BeitragVerfasst: Do 20.05.04 12:59 
obbschtkuche hat folgendes geschrieben:
ähm... Hintergrund? :roll:

Ich meinte damit die Hauptfläche der Form. Also da wo man die Kompos platziert. Aber ich denke, das ließe sich mit einem einfach TImage realisieren ;).

P.S.: Grad noch was eingefallen. Schon mal über abgerundete Ecken und Anti-Alasing nachgedacht?

_________________
.oO'rallY
Linux is like a tipi: No gates, no windows and a gnu-eating apache inside...
obbschtkuche
Gast
Erhaltene Danke: 1



BeitragVerfasst: Do 20.05.04 13:20 
Aaah, jetzt hab ichs verstanden ;)

Um genau zu sein, das Formular selbst wird garnicht verändert, nur das drumherum (ein zweites Formular)

Abgerundete Ecken werden denke ich auf jeden Fall noch kommen, nur eine Frage der Zeit :P
Dass sich das Formular jedes Mal um ein paar Pixel erhöht wenn der Skin gewechselt wird werde ich auch bei der nächsten Version beseitigen.
O'rallY
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 563



BeitragVerfasst: Do 20.05.04 15:17 
Hab nen Bug entdeckt. Wenn man die Form unten links verkleinert und sie nicht weiter verkleinerbar ist, bewegt sich die gesamte Form nach rechts.

//edit: ist allgemein so, wenn man die Form von der linken Seite verkleinert.

//edit2: Noch was: wie wärs, wenn du einfach in die styledateien die Hintergrundfarbe der Form speichern würdest?

_________________
.oO'rallY
Linux is like a tipi: No gates, no windows and a gnu-eating apache inside...