Español
Fuente/ Codesnippets

Fortschrittsbalken Grafik Statusbar

 

KompilierenMarcaSeparación
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
Statusbar mit Fortschrittsbalken und Grafik
====================================================================
StatusZeile mit API für Profan 32 Bit, Win 95 erzeugen
und automatisch an die Fensterveränderung anpassen.
Zusätzlich im ersten Feld der Statusbar eine Progressbar erzeugen.
Grafik in der Statusbar ausgeben
Buttons als Steuer-Elemente in einem Feld der Statuszeile.
(c) 1998 Richard Maurukas
====================================================================
declare Statbar&,t$,Ende%
declare Felder&
declare StatbarFeld#           Beinhaltet die Feldbereiche von links
Declare StatbarText1#,StatBarText2#,StatBarText3#,StatBarText4#  usw
Declare TRect#                 Rectangle des Feldes für die Progressbar
Declare Progress_1&            Handle der Progressbar
declare sbutton1%,sbutton2%,sbutton3%,sbutton4%,sSatz%
DIM Trect#,16                  Max Adresse der Rectangle Struktur
Dim Statbartext1#,255          maximalAnzahl der Zeichen im Feld 255
Dim StatBarText2#,255
Dim StatBarText3#,255
Dim StatBArText4#,255
dim Statbarfeld#,255
long StatBarFeld#,0=200                     erstes Feld von Links
long StatBarFeld#,4=400                     zweites Feld von Links
long StatBarFeld#,8=580                     drittes Feld von Links
long StatBarFeld#,12=640                    viertes Feld usw.
string StatBarText1#,0=1998 Richard Maurukas
string StatBarText2#,0=Statuszeile für Profan 32 Bit
String StatBarText3#,0=mit Feldern
String StatbarText4#,0=Time$(0)
Def CreateStatusBar(4) !COMCTL32.DLL, CreateStatusWindowA
cls
let Statbar&=CreateStatusBar($50800010,0,%hwnd,100)   als letztes eine ID
let Felder&=sendmessage(Statbar&,$404,4,StatBarFeld#) Aufteilung der Felder
sendmessage(Statbar&,$401,0,StatBarText1#)           Text ab ins erste Feld
sendmessage(Statbar&,$401,1,StatBarText2#)          Text ab ins zweite Feld
sendmessage(Statbar&,$401,2,StatBartext3#)          Text ab ins dritte Feld
sendmessage(Statbar&,$401,3,StatBartext4#)          Text ab ins dritte Feld
usw.
Hier noch einige Infos aus der Statbar holen u. anzeigen
Print Anzahl der Felder in der StatusBar: ;Sendmessage(Statbar&,$406,0,0)
Print Textlänge in Feld 1               : ;SendMessage(Statbar&,$403,0,0)
Die Rechteck Struktur aus dem ersten Statusbarfeld für die Progressbar holen
sendmessage(Statbar&,$40A,0,TRect#)
die Progressbar in das 1. Feld der Statusbar setzen
Let Progress_1&=@control(msctls_progress32,@$(2),$50000000,
long(TRect#,0),long(Trect#,4),
long(Trect#,8),sub(long(Trect#,12),2),
Statbar&,102,%HInstance)
sendmessage(Progress_1&,$402,50,0) auf 50 setzen
sendmessage(Statbar&,$40A,2,TRect#) Die Rechteckstrucktur aus Feld 3
Let sbutton1%=createbutton(statbar&,|<,long(TRect#,0),long(Trect#,4),
20,sub(long(Trect#,12),2))
Let sbutton2%=createbutton(statbar&,<,add(long(TRect#,0),20),long(Trect#,4),
20,sub(long(Trect#,12),2))
Let sbutton3%=createbutton(statbar&,>,add(long(TRect#,0),80),long(Trect#,4),
20,sub(long(Trect#,12),2))
Let sbutton4%=createbutton(statbar&,>|,add(long(TRect#,0),100),
long(Trect#,4),20,sub(long(Trect#,12),2))
Let ssatz%=createedit(statbar&,50,add(long(TRect#,0),40),long(Trect#,4),
40,sub(long(Trect#,12),2))

whilenot equ(ende%,20) ges 46

    DrawLibIcon Progman.EXE,ende%,mul(30,ende%),100
    DrawLibIcon Progman.EXE,add(20,ende%),mul(30,ende%),140
    inc ende%

wend

startpaint Statbar&
DrawLibIcon Progman.EXE,39,add(long(TRect#,0),130),-4
endpaint
decimals 0
Let Ende%=0

whilenot Ende%

    waitinput

    If @equ(%key,4)

        wenn die Fenstergröße verändert wurde, die Statusbar ans Fenster anpassen.
        SetWindowPos Statbar&=0,0-0,0;0
        startpaint Statbar&
        DrawLibIcon Progman.EXE,39,add(long(TRect#,0),130),-4
        endpaint

    Elseif Getfocus(Sbutton1%)

        sendmessage(Progress_1&,$402,0,0)   auf 0 setzen
        Settext ssatz%,0

    Elseif Getfocus(Sbutton2%)

        sendmessage(Progress_1&,$403,-2,0)   um 2 erniedrigen
        Settext ssatz%,str$(sub(Val(gettext$(Ssatz%)),2) )

    Elseif Getfocus(Sbutton3%)

        sendmessage(Progress_1&,$403,2,0)   um 2 erhöhen
        Settext ssatz%,str$(add(Val(gettext$(Ssatz%)),2) )

    Elseif getfocus(Sbutton4%)

        sendmessage(Progress_1&,$402,100,0) auf 100 setzen
        Settext ssatz%,100

    Elseif @Equ(%Scankey,27)

        let ende%=1

    endif

wend

dispose Statbartext1#
Dispose Statbartext2#
Dispose Statbartext3#
Dispose Statbartext4#
Dispose Statbarfeld#  Tippfehler Dsipose Stabarfeld# verbessert, Thomas Hölzer
disponer Trect#
end
 
15.07.2007  
 



Zum Quelltext


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

1.626 Views

Untitledvor 0 min.
Thomas Freier30.01.2024
Stephan Sonneborn04.11.2019
PETER195618.07.2018
Andre Rohland04.05.2014
Más...

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie