 |
AutoHotkey Community Wir helfen uns gegenseitig aus der Patsche
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: Sa Mai 19, 2007 4:32 pm Titel: InfoboxZ() - Infobox Framework |
|
|
Hallo,
Ich habe für mich ein simples "Infobox" Framework geschieben. Damit lassen sich ganz einfach Infos unten rechts anzeigen.
Braucht man immer ab und zu, gerade bei grösseren Projekten.
InfoboxZ Download (zu finden unter /Open Section/GUI)
+Source
+gFx (graphics)
(Ihr könnt es runterladen, entpacken und die ahk Datei doppelklicken, dann seht ihr das Beispiel.)
Konstruktive Kritik ist erwünscht
Greetz
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer 
Zuletzt bearbeitet von IsNull am So Jan 06, 2008 5:24 pm, insgesamt 6-mal bearbeitet |
|
| Nach oben |
|
 |
John W
Anmeldedatum: 03.05.2007 Beiträge: 188 Wohnort: /home/john
|
Verfasst am: So Mai 20, 2007 11:56 am Titel: |
|
|
SEHR SCHÖN GEMACHT!!!  _________________ KOMPLETT INAKTIV - nutze kein AHK mehr.
Zuletzt bearbeitet von John W am Mi Mai 30, 2007 1:37 pm, insgesamt 2-mal bearbeitet |
|
| Nach oben |
|
 |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: So Mai 20, 2007 12:13 pm Titel: |
|
|
| John W hat Folgendes geschrieben: | Hättest du´s nicht woanders hochladen können?
Ich würde es (mit deiner Erlaubnis) auf meine HP hochladen, mit dem Hinweis "Made by IsNull"
Aber sonst: SEHR SCHÖN GEMACHT!!!  |
Hallo,
Erstamal danke für dein positives Feedback
Ich habe im moment gerade keinen (öffentlichen) Ftp Server zum Dateien anbieten - und um andere (z.B. Thalon) darum zu bitten, fand ich mein "Framework" noch nicht ausgeklügelt genug.
Lange Rede kurzer Sinn: Du kannst das ganze sehr gerne auf deine Page hochladen Schick mir dann per PN einen direcktlink, dann werde ich ihn oben in mein Posting reineditieren.
Gruss
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer  |
|
| Nach oben |
|
 |
msgbox
Anmeldedatum: 05.05.2007 Beiträge: 818 Wohnort: C:\
|
Verfasst am: So Mai 20, 2007 1:01 pm Titel: |
|
|
Was kann ich unter framework vestehen? Net framework?
Aber alles in allem finde ich sehr schön gemacht! Ich empfehle noch das die Box verschiebbar ist! So dann man es mit der maus bewegen kann... |
|
| Nach oben |
|
 |
AGU Gast
|
Verfasst am: So Mai 20, 2007 1:12 pm Titel: |
|
|
Für solche Fälle gibt es übrigens autohotkey.net. Titan aus dem englischen Forum bietet jedem einen eigenen Account auf seinem Server, auf dem man bis zu 100 MB hochladen kann.
Auf Nachfrage erhält man sogar FTP Zugriff. Selbst eine kleine Homepage lässt sich da hosten. Ich nutze das für alle meine Skripte.
Beispielsweise meinen BBCodeWriter. Sogar die Homepage dafür ist auf autohotkey.net.
Also schau doch mal vorbei.
http://www.autohotkey.net
________________________
Gruß AGU |
|
| Nach oben |
|
 |
John W
Anmeldedatum: 03.05.2007 Beiträge: 188 Wohnort: /home/john
|
Verfasst am: So Mai 20, 2007 2:57 pm Titel: |
|
|
[Edit] von meiner Site genommen _________________ KOMPLETT INAKTIV - nutze kein AHK mehr.
Zuletzt bearbeitet von John W am Mi Mai 30, 2007 1:38 pm, insgesamt einmal bearbeitet |
|
| Nach oben |
|
 |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: So Mai 20, 2007 3:29 pm Titel: |
|
|
Hallo zusammen
@AGU, thx, das ist mr bis jetzt nicht bewusst gewesen, dann werde ich es dort mal uppen.
Ich habe jetzt noch hinzugefügt, dass man die Infobox verschieben kann. (wenn man oben den Rahmen zieht, also Windows Standard)
Wenn man unten in die eigentliche Info klickt verschwindet sie wieder.
Gruss
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer  |
|
| Nach oben |
|
 |
denick
Anmeldedatum: 15.09.2006 Beiträge: 1968 Wohnort: Berlin
|
Verfasst am: Mo Mai 21, 2007 5:24 am Titel: |
|
|
Moin IsNull,
sieht wirklich gut aus!
Für das Bewegen der Box hat Skan im englischen Forum eine geniale Lösung eingestellt: http://www.autohotkey.com/forum/viewtopic.php?p=64185#64185.
Die Subroutine verkürzt sich damit auf:
| Code: | DragInfoBox:
PostMessage, 0xA1, 2,,, A
Return |
Du kannst die beiden Subs kill_scvs_activeDisplay und DragInfoBox auch hinter Return 0 in die Funktion einfügen, die Variable InfoText als Static deklarieren und das Global entfernen. Dann ist Alles in der Funktion gekapselt und - wenn das hier auch eher unwahrscheinlich ist - Kollisionen mit Variablennamen im aufrufenden Skript werden vermieden. _________________ Hilfe zur Hilfe
(de)nick |
|
| Nach oben |
|
 |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: Mo Mai 21, 2007 8:54 am Titel: |
|
|
Hi denick,
Ich habe das ganze auch gerne kompakt, deswegen kommen mir deine Tipps sehr gelegen
Auch das mit dem move der Fenster macht das ganze um einiges einfacher.
Werde das anpassen und als ver 1.2 zum dl anbieten.
thx & Gruss
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer  |
|
| Nach oben |
|
 |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: Mo Mai 21, 2007 3:53 pm Titel: |
|
|
ver 1.2 ist nun "oben"
@denik: Alles funktioniert, nur das mi dem entglobalisieren hat ein Problem ergeben: Der slideout dll call funtz nicht mehr (aber nur, wenn er über das Label aufgerufen wird.)
| Code: |
InfoboxZ(titel, text, showtime=10000, gfx=""){
global kill_scvs_activeDisplay, DragInfoBox ;so gehts nicht
IfWinExist, scvs_activeDisplay
{
wait := DllCall("AnimateWindow","UInt",GUI_ID,"Int",1000,"UInt","0x90000") ;slide out
gui, 98:destroy
}
if gfx =
gfx = blue
x_w := A_ScreenWidth - 240
y_h:= A_ScreenHeight - 200
Gui, 98:+LastFound
Gui, 98:-Caption +ToolWindow +alwaysontop +border
GUI_ID:=WinExist()
Gui, Margin, 0, 0
ifexist, %A_workingDir%\gfx\gfx_killborder_%gfx%.gif
{
Gui, 98:add, Picture, x0 y0 h30 w240 gDragInfoBox, %A_workingDir%\gfx\gfx_moveborder_%gfx%.gif
Gui, 98:add, Picture, x0 y30 h120 w240 gkill_scvs_activeDisplay, %A_workingDir%\gfx\gfx_killborder_%gfx%.gif
}
Else
Gui, 98:color, white
gui, 98:font, s9 fThaoma
Gui, 98:Add, Text,cblack x20 y10 +BackgroundTrans, -::++%titel% Info++::-
gui, 98:font, s8 fThaoma
Gui, 98:Add, Text, x20 yp+40 w170 h150 gkill_scvs_activeDisplay +BackgroundTrans, %text%
Gui,98:Show, hide x%x_w% y%y_h% w200 h150, scvs_activeDisplay
wait := DllCall("AnimateWindow","UInt",GUI_ID,"Int",1000,"UInt","0xa0000") ;slide in
if showtime != 0
{
SetTimer, kill_scvs_activeDisplay, %showtime%
}
return 0
kill_scvs_activeDisplay:
IfWinExist, scvs_activeDisplay
{
wait_2 := DllCall("AnimateWindow","UInt",GUI_ID,"Int",1000,"UInt","0x90000") ;slide out
msgbox % wait_2 ;nur zu testzwecken *gg. Hier sieht man, dass die Func null stat 1 zurück gibt...
gui, 98:destroy
SetTimer, kill_scvs_activeDisplay, Off
}
Return
DragInfoBox:
PostMessage, 0xA1, 2,,, A
Return
}
;######################## END OF FUNCTION ######################################
|
Siehst du den Fehler? Die ver 1.2 ist jetzt halt immer noch global...
Gruss
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer  |
|
| Nach oben |
|
 |
denick
Anmeldedatum: 15.09.2006 Beiträge: 1968 Wohnort: Berlin
|
Verfasst am: Di Mai 22, 2007 4:43 am Titel: |
|
|
Moin IsNull,
das habe ich wohl übersehen!
Mit Static GUI_ID scheint das aber doch zu funtzen, probier mal. Und falls jemand den GFX-Stil nicht verwenden will, solltest Du dem Textfeld für den Titel auch noch ein gDragInfoBox spendieren, damit die Box auch dann bewegt werden kann.
Wie einst ein Berliner Bürgermeister sinngemäß sagte:
Ich lerne immer noch dazu, und das ist auch gut so!
Ich habe fertig und kann mich erst ab Freitag wieder melden! _________________ Hilfe zur Hilfe
(de)nick |
|
| Nach oben |
|
 |
haichen Gast
|
Verfasst am: Di Mai 22, 2007 11:21 am Titel: |
|
|
| Code: |
gui, 98:font, s9 fThaoma
Gui, 98:Add, Text,cblack x20 y10 +BackgroundTrans, -::++%titel% Info++::-
gui, 98:font, s8 fThaoma |
Neue Schrift?  |
|
| Nach oben |
|
 |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: Di Mai 22, 2007 12:41 pm Titel: |
|
|
"Tahoma" werde das am Abend korrigieren. - evtl. auch gleich ganz entfernen, da das ja unnötig ist. So wird halt einfach die Standardschrift verwendet.
Gruss
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer  |
|
| Nach oben |
|
 |
haichen
Anmeldedatum: 10.06.2007 Beiträge: 143
|
Verfasst am: Fr Sep 14, 2007 3:19 pm Titel: |
|
|
Ich hab dein schönes Skript jetzt nochmal ausprobiert und dabei ist mir aufgefallen, daß die Anzeigedauer in deinem Beispiel so nicht funktioniert.
Das auf den Infoboxbefehl nachfolgende Sleep wird sofort ausgeführt.
Wenn der Sleepbefehl kürzer als die showtime der Infobox ist wird auch die nächste Infobox sofort ausgeführt.
Für den Fall, daß die Infoboxen nur nacheinander gezeigt werden sollen (inklusive einer showtime), hab ich deinen Code etwas verändert:
| Code: | InfoboxZ(titel, text, showtime=10000, gfx=""){
global kill_scvs_activeDisplay, DragInfoBox
static GUI_ID
IfWinExist, scvs_activeDisplay
{
;wait := DllCall("AnimateWindow","UInt",GUI_ID,"Int",1000,"UInt","0x90000") ;slide out
loop{
sleep 2000
IfWinNotExist, scvs_activeDisplay
{
gui, 98:destroy
break
}
}
}
...
...
...
if showtime <> 0
{
SetTimer, kill_scvs_activeDisplay, %showtime%
showtime += 2500
sleep, %showtime%
}
return 0
|
 |
|
| Nach oben |
|
 |
IsNull
Anmeldedatum: 20.12.2006 Beiträge: 1872 Wohnort: CH
|
Verfasst am: Fr Sep 14, 2007 4:17 pm Titel: |
|
|
Danke für deine Verbesserung.
Mir ist ebenfalls noch aufgefallen, dass wärend dem "Slide in" der Rest vom Skript eine Pause einlegt (ungewollter sleep -.-) Ich habe es aber noch nicht geschafft dies zu fixen.
Werde mir deine Änderungen mal ansehen und danach einbauen.
Ich habe bloss keine Zeit (bin bis SA Abend wieder voll ausgelastet -.-) *Du kannst sonst auch "deine" Version (ganzer Source) uppen, und ich werde sie als ver 1.5 Beta uppen* Wenn ich dann mal Zeit finde und den Sleep Bug gefunden (gefunden habe ich ihn schon, muss ihn blos noch irgendwie entfernen können^^) habe, werde ich dann die ver 1.5 Final uppen.
so far
IsNull
So far
IsNull _________________ Tannenbäume stinken. Sehr poetisch. =)
AHK 2D GAME ENGINE
Ich hab mehr Abstürze als mein Computer  |
|
| Nach oben |
|
 |
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|