Zwischenablage mit Api Funktionen
Übersicht BlitzBasic Codearchiv
morszeckGastBetreff: Zwischenablage mit Api Funktionen |
Sa, Feb 14, 2004 20:31 Antworten mit Zitat |
|
---|---|---|
Global GetBank
Const GHND = $42 Const CF_TEXT=1 Const MAXSIZE=$FFFFFF SetClipBoardText$("Hallo Welt !") Print GetClipBoardText$() Delay 4000 End Function SetClipBoardText$(sText$) Local hMem,hAdr OpenClipboard(0);öffnen EmptyClipboard();leeren ;Den Globalen Speicherblock allokieren hMem = GlobalAlloc(GHND, Len(sText$) + 1) ;Den Zeiger auf den Globalen Speicherblock setzen und den Speicherblock ;für andere Progs sperren hAdr = GlobalLock(hMem) ;unseren String in den Speicherblock kopieren lstrcpy1(hAdr, sText$) ;Den Speicherblock wieder freigeben GlobalUnlock(hMem) ;Den Speicherblock in die Zwischenablage schieben If SetClipboardData(CF_TEXT, hMem) = 0 Then Return "Fehler beim Setzen der Daten in die Zwischenablage!" GlobalFree(hMem);freigeben End If CloseClipboard();schliessen End Function Function GetClipboardText$() Local hData,hAdr If IsClipboardFormatAvailable(CF_TEXT)=0 Then Return "" OpenClipboard(0) hData=GetClipboardData(CF_TEXT) hAdr=GlobalLock(hData) GetBank=CreateBank(MAXSIZE) lstrcpy(GetBank,hAdr) GlobalUnlock(hData) CloseClipboard() Return PeekString$(GetBank) End Function Function PeekString$(bank,offset=0) Repeat zeichen=PeekByte(bank,offset) If zeichen=0 Then Exit t$=t$+Chr$(zeichen) offset=offset+1 Forever Return t$ End Function ;userlibs ;.lib "kernel32.dll" ;lstrcpy1%(lpString1%, lpString2$):"lstrcpy" ;lstrcpy%(lpString1*, lpString2%): "lstrcpy" ;GlobalAlloc%(wFlags%, dwBytes%):"GlobalAlloc" ;GlobalLock%(hMem%):"GlobalLock" ;GlobalUnlock%(hMem%):"GlobalUnlock" ;GlobalSize%(hMem%):"GlobalSize" ;GlobalFree%(hMem%):"GlobalFree" ;.lib "user32.dll" ;GetClipboardData%(wFormat%):"GetClipboardData" ;CloseClipboard%():"CloseClipboard" ;OpenClipboard%(hwnd%):"OpenClipboard" ;SetClipboardData%(wFormat%, hMem):"SetClipboardData" ;EmptyClipboard%():"EmptyClipboard" ;IsClipboardFormatAvailable%(wFormat%):"IsClipboardFormatAvailable" |
||
OJay |
Sa, Feb 14, 2004 20:58 Antworten mit Zitat |
|
---|---|---|
1. code tags
2. geht das kürzer 3. falsches forum (userlibs!) 4. https://www.blitzforum.de/viewtopic.php?p=13431 |
||
Übersicht BlitzBasic Codearchiv
Powered by phpBB © 2001 - 2006, phpBB Group