Skins

Nutzung, Komponenten, .NET

Moderator: Moderatoren

Antworten
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Skins

Beitrag von Rudolf »

Hallo,
habe da ein Tool gefunden, mit dem man über ActiveX Skins für Programme definieren kann. Die Verwendung sieht einfach aus und das Ergebnis in den Beispielen kann sich sehen lassen. Habe jetzt versucht das ganze einzubinden, aber leider ändert sich nichts in der Oberfläche. Sonst lässt sich alles problemlos aufrufen. Vielleicht hat noch jemand Interesse dran und könnte sich das mal anschauen.
Es nennt sich SkinCrafter, habe die Sharewareversion installiert. Anbei mein Code.
Grüsse
Rudolf



#INCLUDE "dcdialog.CH"


#pragma Library("ascom10.lib")
#pragma Library("dclipx.lib")

FUNCTION Main()

LOCAL GetList[0], GetOptions,cTest := space(10),lOk

PRIVATE oSkin

/*
OLEObject SkinOb
SkinOb = CREATE oleobject
SkinOb.ConnectToNewObject("SkinCrafter.SCSkin2")
SkinOb.InitLicenKeys("SKINCRAFTER", "SKINCRAFTER.COM", "support@skincrafter.com", "DEMOSKINCRAFTERLICENCE")
SkinOb.InitDecoration(1)
SkinOb.LoadSkinFromFile
*/

oSkin := ActiveXObject():create("SkinCrafter.SCSkin2")
IF Empty(oSkin)
DC_WinAlert( "'SkinCrafter' can not be created:" + Chr(13) + Chr(10 ) +;
ComLastMessage() , "Error" )
QUIT
ENDIF


dcqdebug ComLastError()
if !fexists("Stylish.skf")
dc_msgbox("Fehler, Skin nicht gefunden")
endif
oSkin:InitLicenKeys("SKINCRAFTER", "SKINCRAFTER.COM", "support@skincrafter.com", "DEMOSKINCRAFTERLICENCE")
oSkin:InitDecoration(1)
oSkin:LoadSkinFromFile("Stylish.skf")
oSkin:ApplySkin()


dc_inspectobject(oSkin)

@ 1,1 dcsay "Das ist ein Test" GET cTest
dcread gui fit modal addbuttons to lOk
altd()

return NIL
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9355
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Beitrag von Tom »

Hallo, Rudolf.

Ändert sich was, wenn Du eine .manifest-Datei für das Projekt anlegst?
Herzlich,
Tom
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo Tom,
ändert sich leider nichts.
Grüsse
Rudolf
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
Beiträge: 830
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg
Danksagung erhalten: 2 Mal

Beitrag von Lewi »

Hallo Rudolf,

für Visual Objects habe ich ein Beispiel gefunden. Für xBase sähe der Code so aus:

Code: Alles auswählen

 
oSkin:InitLicenKeys("0","SKINCRAFTER","SKINCRAFTER.COM","support@skincrafter.com","DEMOSKINCRAFTERLICENCE") // evtl. "0" als ersten Paramater?
oSkin:DefineLanguage(1)
oSkin:InitDecoration(1)
SkinOb:LoadSkinFromFile( "c:\test\Skin.skf" )  // versuche es mal mit einer Pfadangabe
SkinOb:ApplySkin() 

Gruß, Olaf
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo Olaf,
leider bekomme ich dann eine Fehlermeldung, ungültige Anzahl Parameter. Die "0" dürfte ihm also nicht bekommen.
Aber das Logo von Skincrafter erscheint und meldet die Sharewareversion. Also wird des grundsätzlich aktiviert.
Ich bekomme bei ComLastError() -2147467262 raus, vielleicht hat es mit dem was zu tun.
Aber interessant, dass es mit VO geht. Wäre super wenn man das Ding auch mit XBase++ zum Laufen bringen würde.
Grüsse
Rudolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Re: Skins

Beitrag von AUGE_OHR »

hi,
Rudolf hat geschrieben: Es nennt sich SkinCrafter, habe die Sharewareversion installiert.
lohnt sich das wirklich den Preis für Registrierung: 399,- US ?

gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo Jimmy,
für mich würde sich der Preis rentieren, der Anwender entscheidet auch mit den Augen. XBase++ hat für mich eine zu altmodische Oberfläche.

Grüsse
Rudolf
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9355
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 101 Mal
Danksagung erhalten: 361 Mal
Kontaktdaten:

Beitrag von Tom »

Hallo, Rudolf.

ComLastMessage() nach der Initialisierung des Objekts sagt "Schnittstelle nicht unterstützt". Ich nehme an, daß SkinCrafter nicht mit Xbase++ zurechtkommt.
Herzlich,
Tom
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

hi,
Rudolf hat geschrieben: XBase++ hat für mich eine zu altmodische Oberfläche.
naja eben halt "Windows" ...
aber man kann doch auch mit Xbase++ diverse Sachen machen.

So hab ich z.b. einen "runden" XbpDialog für meine "analog" Uhr
gewählt oder "transparente" Fenster. Mit :setPresParam() kann
man so ziemlich alle XbParts in ihrer Optik manipulieren und Günter
hat sicherlich noch irgend einen API "Trick" um Xbase++ zu erweitern :)

klar hängt es von der Application selbst ab ob man ein "knallbuntes"
oder "seriöses" Erscheinungsbild einsetzt, aber das "was und wie" die
Applikation etwas macht sowie die Geschwindigkeit ist doch das
entscheidend.

So hab ich z.b. meine "Timeline" mit Bitmaps erstmal auf Eis gelegt.
Nicht weil es nicht möglich ist, sondern weil es einfach viel zu langsam
ist um 64x64x32 Bitmaps anzuzeigen. Wenn ich nun die Farbtiefe auf
8-bit verringere stimmt die Optik nicht mehr (Farbfehler) aber es geht
schnell genug um damit navigieren zu können ...

last, but not least : ich "mag" keine 3party Lösungen mehr die nicht
Source sind. Wenn M$ mal wieder seine API wechselt (OCX -> .NET)
"passt" nichts mehr. Bei jeder neuen Version muss man einem "update"
nach jagen bis alles wieder "stabil" läuft.

gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo an alle,
wenn Skincraft nicht unterstützt wird, dann muss ich das Ganze sowieso vergessen. Hat zu einfach ausgesehen, ein paar Zeilen zusätztlicher Code und die Programme hätten besser ausgesehen.
Das mit Geschwindigkeit und verschiedenen Versionen etc. ist sicher ein Problem. Aber das Interface hätte sich ja leicht ausschalten lassen wenn irgend etwas nicht stimmt.

Jedenfalls Danke für Euro Tips

Grüsse
Rudolf
Benutzeravatar
Lewi
1000 working lines a day
1000 working lines a day
Beiträge: 830
Registriert: Di, 07. Feb 2006 14:10
Wohnort: Hamburg
Danksagung erhalten: 2 Mal

Beitrag von Lewi »

Mit folgendem Code funktioniert es bei mir:

Code: Alles auswählen

#include "Common.ch"
#pragma Library("ascom10.lib")

PROCEDURE AppSys
   SET CHARSET TO ANSI
RETURN

Func Main()
  Local oSkin
   oSkin := ActiveXObject():create("SkinCrafter.SCSkin2")
   oSkin:InitLicenKeys("SKINCRAFTER", "SKINCRAFTER.COM", "support@skincrafter.com", "DEMOSKINCRAFTERLICENCE")
   oSkin:InitDecoration(1)
   oSkin:LoadSkinFromFile("Stylish.skf")
   oSkin:ApplySkin()
   msgbox("Test")
Das Tool habe ich mittels des Installationsprogramm auf meinem Rechner installiert. Anschließend habe ich die Datei "Stylishs.skf" in das Verzeichnis der Anwendung kopiert.

Gruß, Olaf
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo Olaf,
Vielen Dank, dein Code funktioniert jetzt bei mir auch, nur der eXPress++ Dialog verweigert.
Schade ... Werde mal Roger kontaktieren. Jedenfalls super dass es grundsätztlich läuft, sieht super aus.
Grüsse
Rudolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

hi,

hab hier noch was gefunden betr. Optik

http://www.public.sytes.net/hoefs/windo ... vistamizer

gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo Jimmy,
danke, sieht gut aus. Aber ich suche etwas, was nur meine Applikation ändert. Und das ohne Umstellungen im Betriebssystem.
Überigends habe auch das gefunden, sieht auch super aus, ist aber leider nur auf japanisch.
http://www.ksky.ne.jp/%7Eseahorse/mtate2/
Grüsse
Rudolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Beitrag von AUGE_OHR »

hi,
Rudolf hat geschrieben: Aber ich suche etwas, was nur meine Applikation ändert.
was genau willst du den ändern ? Im Grunde kannst du doch (fast) alles
per Xbase++ Presentation Parameter ändern was Xbase++ ist.

Per API kommt man auch an "Windows" Parts ran, wie z.B. die Titlebar
( s.h. Greg Doran, "Make a Custom TitleBar using the Win-API" ).

Vielleicht sollte man eine neuen Thread aufmachen und dort dann die
verschiedenen Möglichkeiten aufzeichen und disskutieren.

gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Beitrag von Rudolf »

Hallo Jimmy,
mit Skincrafter sehen die Programme wesentlich besser aus, wie schon gesagt, der Kunde entscheidet auch über die Optik. Je besser die Oberfläche aussieht, umso leistungsfähiger wirkt ein Programm.
Die Möglichkeit mit Skincrafter einfach nur mit ein paar Programmzeilen das Aussehen wesentlich zu verbessern, hätte mir am besten gefallen.
Aber die Idee mit einem eigenen Thread für sowas finde ich gut.
Grüsse
Rudolf
Antworten