Deutsch
Forum

Sammle eure besten Quickies...

 

Frank
Abbing
...aber schickt mir jetzt bitte keine Videos von euch ein oder sonstigen Schweinkram.

Nein, für mein neues Programm bin ich auf der Suche nach den besten Teilprogrammen (maximal 10 Zeilen). Also Zeilen oder Routinen, die ihr in jedem Programm immer wieder verwendet. Die euch lebenswichtig erscheinen, ohne die eure Programme nicht gelingen würden.
Eben sowas wie das hier:

Oder:
Def GetSysColor(1) !"USER32","GetSysColor"
Def LoadIcon(2) !"USER32","LoadIconA"
Cls GetSysColor(15)
SendMessage(%hwnd,$80,1,LoadIcon(0,32517))

Da fällt euch doch auch bestimmt was ein?
 
20.10.2006  
 




KompilierenMarkierenSeparieren
windowtitle ""
windowstyle ( 1 | 2 | 4 | 8 | 16 | 512 ) 1024
window 100,100 - 640,480

while 1

    waitinput

wend

end

KompilierenMarkierenSeparieren
 {$cleq}

KompilierenMarkierenSeparieren
 
20.10.2006  
 




Jörg
Sellmeyer
Sind teilweise mit XProfan10 obsolet geworden aber darunter absolut nützlich:
KompilierenMarkierenSeparieren
Def CharCount(2) Int(Sub(Len(@$(1)),Len(translate$(@$(1),@$(2),""))))
Def VerzeichnisTiefe(1) Int(Sub(Len(@$(1)),Len(Translate$(@$(1),"\",""))))
Def PfadTeil(2) SubStr$(@$(1),@%(2),"\")
Vorher sollte man die Verzeichnistiefe ermitteln
Def DateiName(1) SubStr$(@$(1),Add(VerzeichnisTiefe(@$(1)),1),"\")
Def DateiPfad(1) Translate$(@$(1),Add$("\",DateiName(@$(1))),"")
Def Home(0) Translate$(Upper$(Par$(0)),Upper$(FindFirst$(Par$(0))),"")
ausgewählter Listboxeintrag
Def ListBoxStringSel(1) GetString$(@&(1),SendMessage(@&(1),$0188,0,0))
Def ListClear(1) SendMessage(@&(1),$184,0,0)
scrollt den übergebenen String an die obere Listboxkante (Position in der Liste bleibt!)
Def SelectTop(2) SendMessage(@&(1),~LB_SETTOPINDEX,SelectString(@&(1),-1,@$(2)),0)
Def SetCursel(2) SendMessage(@&(1),$0186,@&(2),0)
Def SubStrRight(3) SubStr$($(1),If(GT(Len($(1))-Len(Translate$($(1),$(3),""))
+ 2,%(2)),Len($(1))-Len(Translate$($(1),$(3),""))+2-%(2),%(2)),$(3))
Par1= Der zu bearbeitende String
Par2= Nummer des Teilstrings von rechts
Par3= Trennzeichen
Par2 Anzahl von Zeichen aus Par1 löschen
Def DelLast(2) Mid$(@$(1),1,Sub(Len(@$(1)),@&(2)))
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
20.10.2006  
 




Nico
Madysa
Phh, wenn Jörg mehr als 10 Zeilen schickt, dann ich auch!
KompilierenMarkierenSeparieren
Fenster, bei dem die zukünftige Größe des
CLIENT-Bereiches angegeben wird.
declare OWin#

proc OptWindow

    if Upper$($(1)) = "START HWND"

        parameters w$ , style% , titel$ , dx% , dy%
        Dim OWin# , 4
        WindowTitle titel$
        WindowStyle style%
        Window (2 * %MaxX) , (2 * %MaxY) - dx% , dy%
        cls SysColor(15)
        Word OWin# , 0 = dx%
        Word OWin# , 2 = dy%

    elseif Upper$($(1)) = "END"

        declare hwin& , x% , y% , dx% , dy%
        dx%   = (2 * Long(OWin#,0)) -  width(hwin&)
        dy%   = (2 * Long(OWin#,2)) - height(hwin&)

        if %pCount = 1

            x% = (%MaxX - dx%) / 2
            y% = (%MaxY - dy%) / 2

        endif

        SetWindowPos %hWnd = x% , y% - dx% , dy%
        Dispose OWin#

    endif

endproc

 
Nico Madysa
20.10.2006  
 




Frank
Abbing
Bitte nicht zu viele Zeilen! Der 10er-Grenze kann ich zwar erweitern, aber das macht die Geschichte unübersichtlich.

Ich will mein Programm mit einigen ausgesuchten Snipseln ausstatten, wenn ich es für den Download freigeben. Den Rest kann jeder User nachher selber einstellen.
 
20.10.2006  
 




Frank
Abbing
Hab die Grenze auf 24 Zeilen heraufgehoben und hoffe, dass noch Einsendungen kommen. Los, öffnet eure Schatzkisten...!
 
20.10.2006  
 



Sollte man am Anfang eines jeden Programmes einfügen
KompilierenMarkierenSeparieren
!Def GetVersion(0) !"kernel32", "GetVersion"
Declare Version$
Version$ = Str$((GetVersion() & $FFFF) & $FF)
Version$ = Version$ + "." + Str$((GetVersion() & $FFFF) >> 8)

If Version$ = "4.90"  WindowsME, besser beenden ;)

    End

EndIf

 
21.10.2006  
 




Torsten
Rümker
Registry auslesen ohne Probleme:
KompilierenMarkierenSeparieren
Proc Readreg

    Declare E%,E$
    E%=Set("Errorlevel",-1)
    E$=Readini$($(1),$(2),$(3))
    Set("Errorlevel",E%)
    Return E$

Endproc


Special Folder auslesen:
KompilierenMarkierenSeparieren
So das wärs erstmal.

MfG
Torsten
 
Ich lerne, ob ich will oder nicht!
Betriebssystem:
- Ubuntu 15.x
- Windows (diverse)
XProfan Version: X2
21.10.2006  
 




Michael
Dell
Ein paar Schnipsle:

4 kB
Kurzbeschreibung: __Schnipsel__
Hochgeladen:21.10.2006
Ladeanzahl70
Herunterladen
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
21.10.2006  
 




Frank
Abbing
Ich bedanke mich bei allen Einsendern!!!

Mein Tool SnippetAdmin, das unter dem Arbeitstitel Profan für Faule lief, steht nun kurz vor der Vollendung.
 
22.10.2006  
 



Da ich mir für Quickies immer besonders viel Zeit lasse, hier auch noch was von mir:
KompilierenMarkierenSeparieren
Proc WaitInpuEx Erweitertes Waitinput für Dialoge von AH

    @External("USER32","MsgWaitForMultipleObjects",0,0,0,-1,$1 | $4 | $10)
    Rem
    Rem
    Rem
    Rem
    REM
    Rem
    Rem
    Rem
    Rem
    REM
    Rem
    Rem
    Rem
    Rem
    REM
    Rem
    Rem
    Rem
    Rem
    REM

endproc


Das beste behalte ich aber trotzdem lieber für mich .
 
25.10.2006  
 




Carlo
Keil
@ Andreas: könntest du mich bitte mal über den Zweck der REMs erleuchten?

Danke
Carlo
 
25.10.2006  
 




Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

4.295 Betrachtungen

Unbenanntvor 0 min.
Peter Max Müller13.11.2017
Tango14.07.2017

Themeninformationen



Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie