Paules-PC-Forum.de Anzeige:

Microsoft Windows Intune: PC-Verwaltung und -Sicherheit in der Cloud: Updateverwaltung, Anti-Virus und vieles mehr!


Zurück   Paules-PC-Forum.de > Programmierung > XProfan > Helfer & Tools

Helfer & Tools Programme für und in XProfan und Fragen dazu.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag Hilfe bei Script Erstellung
Aufrufe: 15, Antworten: 6
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26731, Antworten: 4207
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 121, Antworten: 15
Gehe zum ersten neuen Beitrag Grand Prix 2012 Eurovision
Aufrufe: 36, Antworten: 4
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7572, Antworten: 179
Gehe zum ersten neuen Beitrag Verlust der Internetverbindung
Aufrufe: 43, Antworten: 2
Gehe zum ersten neuen Beitrag avs4you_com Lizenz oder Abo?
Aufrufe: 34, Antworten: 2
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 25, Antworten: 4
Gehe zum ersten neuen Beitrag Dateien lassen sich nicht...
Aufrufe: 34, Antworten: 3
Gehe zum ersten neuen Beitrag Programmvorstellung:...
Aufrufe: 22, Antworten: 1
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 12.02.2011, 23:06   #1 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard Clipviewer

Hallo allerseits

In früheren Windows-Versionen gab es ein Tool zum Anzeigen des Inhaltes der Zwischenablage.
Ich habe nun mal versucht, die Funktionalität mittels XProfan nachzubilden. Wie beim Original wird die Anzeige bei jeder Änderung des Inhaltes der Zwischenablage automatisch aktualisiert. Das Ganze sollte ab Profan7 laufen. Es können Texte und Bilder dargestellt werden.
Kleiner Wermutstropfen, wenn das Programm minimiert ist, zeigt die Vorschau ün der Taskleiste den letzten Zustand der Zwischenablage vor dem Verkleinern. Aber das machen Profiprogramme auch nicht besser.

Code:
$H windows.ph
$H messages.ph
Declare Titel$, NextViewer&, LastSender&, Text&, Static&, IsText&, IsPic&, Font&, Static$
Declare Rect#
Declare Bitmap#
Declare Buffer#
Struct Rect = ~TRect
Struct Bitmap = ~TBitmap
DIM Rect#, Rect
DIM Bitmap#, Bitmap
DIM Buffer#, 60

Proc BildHolen
  Declare _Ratio!, _Ratio$, _BMH&
  If ~OpenClipBoard(%HWnd) <> 0
    _BMH& = ~GetClipboardData(~cf_Bitmap)
    ~GetObject(_BMH&, 28, Bitmap#)
    ~CloseClipboard()
    MCLS Bitmap#.bmWidth&, Bitmap#.bmheight&
    StartPaint -1
    ClipLoadBMP 0, 0; 0
    Endpaint
    ' Verhältnis Breite zu Höhe für Anzeige berechnen
    _Ratio! = Bitmap#.bmheight& / Bitmap#.bmWidth&
    _Ratio$ = "  [B : H = 1 : " + Format$ ("0.00", _Ratio!) + "]"
    If _Ratio! < 1
      _Ratio! = Bitmap#.bmWidth& / Bitmap#.bmheight&
      _Ratio$ = "  [B : H = " + Format$ ("0.00", _Ratio!) + " : 1]"
    EndIf
    Static$ = "Bild (" + Str$(Bitmap#.bmWidth&) + " x " + Str$(Bitmap#.bmheight&) + ") Pixel"
    SetText Static&, Static$ + _Ratio$
    IsPic& = 1
  Else
    SetText Static&, "Bildholen gescheitert"
    IsPic& = 0
  EndIf
EndProc

Proc BildSetzen
  Declare _Zoom1!, _Zoom2!, _BW&, _BH&
  Case IsPic& = 2  : BildHolen        ' War Fenster verkleinert, Bild jetzt holen
                        ' BildHolen funktioniert nicht, wenn Programm verkleinert!
  If IsPic& = 1
    ' Proportional in vorhandene Fenstergröße einpassen
    _Zoom1! = %BMPX / Rect#.Right&
    _Zoom2! = %BMPY / (Rect#.Bottom& - 22)
    If _Zoom1! > _Zoom2!
      _BW& = %BMPX / _Zoom1!
      _BH& = %BMPY / _Zoom1!
    Else
      _BW& = %BMPX / _Zoom2!
      _BH& = %BMPY / _Zoom2!
    EndIf
    MCopySizedBMP 0, 0 - %BMPX, %BMPY > 0, 0 - _BW&, _BH&; 0  ' Bild in Fenster einzoomen
  EndIf
EndProc

Proc Size       ' Größenänderung Fenster
  Case ~IsIconic(%HWnd) : Return        ' nichts tun bei verkleinertem Fenster
                                        ' Vorschau wird ohnehin nicht aktualisiert
                                        ' und Bildeinfügen ist hier nicht möglich
  CLS ~GetSysColor(~Color_BtnShadow)
  ~GetClientRect(%HWnd, Rect#)
  SetWindowPos Static& = 0, (Rect#.Bottom& - 22) - (Rect#.Right& - 3), 22
  If IsText&    ' Textdisplay einpassen
    SetWindowPos Text& = 0, 0 - Rect#.Right&, Rect#.Bottom& - 23
    SetText Static&, Static$
    ShowWindow(Text&, 1)
  ElseIf IsPic& ' Bild einpassen
    BildSetzen
  Else
    SetText Static&, Static$
  EndIf
EndProc

Proc ShowText   ' Steuerung Sichtbarkeit Textdisplay
  Parameters _Text&
  IsText& = _Text&
  Case IsText& : IsPic& = 0
  ShowWindow (Text&, IsText&)
EndProc

Proc TextFormat ' Aktion Text
  Declare _Text$, _Len&
  _Text$ = GetClip$()
  _Len& = Len (_Text$)
  ShowText 1
  SetText Text&, _Text$
  Static$ = "Text (" + Str$(_Len&) + " Zeichen)"
EndProc

Proc BildFormat ' Aktion Bild
  ShowText 0
  IsPic& = 2  ' Veranlaßt Bildholen wenn Fenster anzeigebereit ist
EndProc

Proc XFormat    ' Aktion Unbekanntes Format
  Parameters _Static$
  ShowText 0
  Static$ = _Static$
  IsPic& = 0
EndProc

Proc ClipAction         ' Änderungen des Inhalts der Zwischenanlage auswerten
  Declare _Icon&
  CLS ~GetSysColor(~Color_BtnShadow)
  If ~CountClipboardFormats()
    If ~IsClipboardFormatAvailable(~cf_Text)
      Textformat
    ElseIf ~IsClipboardFormatAvailable(~cf_Bitmap)
      BildFormat
    Else
      XFormat "Nicht darstellbar"
    EndIf
  Else
    XFormat "Leer"
  EndIf
  Size
  Case NextViewer& : SendMessage(NextViewer&, ~wm_DrawClipboard, &uwParam, &ulParam)
  ' Kommando durchreichen an nächsten Viewer
EndProc

Proc CBChain    ' Änderung der Viewerkette behandeln
  If &uwParam = NextViewer&
    NextViewer& = &ulParam
  ElseIf NextViewer& <> 0
    SendMessage(NextViewer&, ~wm_ChangeCBChain, &uwParam, &ulParam)
  EndIf
EndProc

Proc MakeTextDisplay
  Font& = ~GetStockObject(~Default_GUI_Font)
  ~GetObject(Font&, 60, Buffer#)
  Long Buffer#, 0 = 16
  Long Buffer#, 4 = 0
  Font& = ~CreateFontIndirectA(Buffer#)                 ' Eigenen Font basiert auf Systemschrift Default_GUI_Font
  SetDialogFont Font&
  Text& = Create("MultiEdit", %HWnd, "", 0, 0, 0, -1)   ' Textanzeige
  SendMessage(Text&, ~em_SetReadOnly, 1, 0)             ' Text als NurLesen anzeigen
  IsText& = 1
  Static& = Control("Static", "", $50000000, 0, 0, 0, 0, %HWnd, 100, %HInstance, $200)  ' Statusanzeige
  Size
EndProc

WindowStyle 575
WindowTitle "ClipView"
Window %MaxX\12, %MaxY\12 - %MaxX\2, %MaxY\2
UseIcon "Windows"
CLS ~GetSysColor(~Color_BtnShadow)
Set("FastMode", 1)
Set("ErrorLevel", 0)
MakeTextDisplay
NextViewer& = ~SetClipboardViewer(%HWnd)        ' Viewer anmelden
UserMessages ~wm_DrawClipboard, ~wm_ChangeCBChain
ClipAction
While 1
  WaitInput
  If %Key = 2
    Break
  ElseIf %Key = 4
    Size
  ElseIf %UMessage = ~wm_DrawClipboard
    ClipAction
  ElseIf %UMessage = ~wm_ChangeCBChain
    CBChain
  EndIf
EndWhile
Dispose Rect#
Dispose Bitmap#
Dispose Buffer#
DeleteObject Font&
~ChangeClipboardChain(%HWnd, NextViewer&)       ' Viewer abmelden, unbedingt bei Ende ausführen!!!
Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 12.02.2011, 23:25   #2 (Direktlink)
Forenmaskottchen
 
Benutzerbild von ts-soft
 
Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
Standard

sehr schön.

Einen Button zum löschen der Zwischenablage, das wird doch ab und an
benötigt, fehlt da noch.

Untertützung für CF_HDROP, also Dateien in der Zwischenablage, also Anzeige
der Pfade und Namen wäre noch praktisch.
__________________
Gruß Thomas

Wenn mir früher jemand gesagt hätte, ich würde
freiwillig eine Wanze mit mir herum tragen und sie
auch noch selbst aufladen, hätte ich laut gelacht.

Heute habe ich ein Smartphone.


http://realsource.de
ts-soft ist gerade online   Mit Zitat antworten
Alt 12.02.2011, 23:37   #3 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard

Danke für die Tips, Thomas. Nehme ich mir mal für morgen vor.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Alt 12.02.2011, 23:44   #4 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.093
Standard

Sehr nett.
Hatte sowas auch mal geschrieben, für Texte. Die konnte man dann auch editieren. Vielleicht als weitere Anregung.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 13.02.2011, 13:17   #5 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard

@Thomas, der Button zum Löschen ist da und auch die Anzeige der cf_HDrop-Daten funktioniert.

@Frank, Du kannst nun den Text in der Zwischenablage bearbeiten. Da habe ich aber eine kleine Hürde eingebaut. Es muß erst ausdrücklich ein Editmodus aktiviert werden (Checkbox). Vorschnelles Bearbeiten der Zwischenablage halte ich nicht für besonders glücklich. Man stelle sich vor, da ist ein Office-Dokument oder sowas drin. Wenn ich das nun bearbeite, dann zerschieße ich mir die ganze Formatierung (zumindest in der Zwischenablage).

Code:
$H windows.ph
$H messages.ph
Declare Titel$, NextViewer&, LastSender&, Text&, Static&, DelBtn&, EditBtn&, CopyBtn&, IsText&, IsPic&, Font&, Static$
Declare Rect#
Declare RRect#
Declare Bitmap#
Declare Buffer#
Struct Rect = ~TRect
Struct Bitmap = ~TBitmap
DIM Rect#, Rect
DIM RRect#, Rect
DIM Bitmap#, Bitmap
DIM Buffer#, 60

Proc BildHolen
  Declare _Ratio!, _Ratio$, _BMH&
  If ~OpenClipBoard(%HWnd) <> 0
    _BMH& = ~GetClipboardData(~cf_Bitmap)
    ~GetObject(_BMH&, 28, Bitmap#)
    ~CloseClipboard()
    MCLS Bitmap#.bmWidth&, Bitmap#.bmheight&
    StartPaint -1
    ClipLoadBMP 0, 0; 0
    Endpaint
    ' Verhältnis Breite zu Höhe für Anzeige berechnen
    _Ratio! = Bitmap#.bmheight& / Bitmap#.bmWidth&
    _Ratio$ = "  [B : H = 1 : " + Format$ ("0.00", _Ratio!) + "]"
    If _Ratio! < 1
      _Ratio! = Bitmap#.bmWidth& / Bitmap#.bmheight&
      _Ratio$ = "  [B : H = " + Format$ ("0.00", _Ratio!) + " : 1]"
    EndIf
    Static$ = "Bild (" + Str$(Bitmap#.bmWidth&) + " x " + Str$(Bitmap#.bmheight&) + ") Pixel"
    SetText Static&, Static$ + _Ratio$
    IsPic& = 1
  Else
    SetText Static&, "Bildholen gescheitert"
    IsPic& = 0
  EndIf
EndProc

Proc BildSetzen
  Declare _Zoom1!, _Zoom2!, _BW&, _BH&
  Case IsPic& = 2  : BildHolen        ' War Fenster verkleinert, Bild jetzt holen
                        ' BildHolen funktioniert nicht, wenn Programm verkleinert!
  If IsPic& = 1
    ' Proportional in vorhandene Fenstergröße einpassen
    _Zoom1! = %BMPX / Rect#.Right&
    _Zoom2! = %BMPY / (Rect#.Bottom& - 49)
    If _Zoom1! > _Zoom2!
      _BW& = %BMPX / _Zoom1!
      _BH& = %BMPY / _Zoom1!
    Else
      _BW& = %BMPX / _Zoom2!
      _BH& = %BMPY / _Zoom2!
    EndIf
    MCopySizedBMP 0, 0 - %BMPX, %BMPY > 0, 26 - _BW&, _BH&; 0  ' Bild in Fenster einzoomen
  EndIf
EndProc

Proc Size       ' Größenänderung Fenster
  Case ~IsIconic(%HWnd) : Return        ' nichts tun bei verkleinertem Fenster
                                        ' Vorschau wird ohnehin nicht aktualisiert
                                        ' und Bildeinfügen ist hier nicht möglich
  CLS ~GetSysColor(~Color_BtnFace)
  ~GetClientRect(%HWnd, Rect#)
  RRect#.Left& = -1
  RRect#.Top& = -1
  RRect#.Right& = Rect#,Right& - 6
  RRect#.Bottom& = 25
  ~DrawEdge(%HDC, RRect#, 9, 15)
  ~DrawEdge(%HDC2, RRect#, 9, 15)
  SetWindowPos Static& = 2, (Rect#.Bottom& - 22) - (Rect#.Right& - 3), 22
  If IsText&    ' Textdisplay einpassen
    SetWindowPos Text& = 0, 26 - Rect#.Right&, Rect#.Bottom& - 48
    SetText Static&, Static$
    ShowWindow(Text&, 1)
  ElseIf IsPic& ' Bild einpassen
    BildSetzen
  Else
    SetText Static&, Static$
  EndIf
EndProc

Proc ShowText   ' Steuerung Sichtbarkeit Textdisplay
  Parameters _Text&
  IsText& = _Text&
  Case IsText& : IsPic& = 0
  ShowWindow (Text&, IsText&<>0)
  ShowWindow (EditBtn&, IsText&=1)
  ShowWindow (CopyBtn&, IsText&=1)
  EnableWindow CopyBtn&, 0
  SetCheck EditBtn&, 0
EndProc

Proc TextFormat ' Aktion Text
  Declare _Text$, _Len&
  _Text$ = GetClip$()
  _Len& = Len (_Text$)
  ShowText 1
  SetText Text&, _Text$
  Static$ = "Text (" + Str$(_Len&) + " Zeichen)"
EndProc

Proc BildFormat ' Aktion Bild
  ShowText 0
  IsPic& = 2  ' Veranlaßt Bildholen wenn Fenster anzeigebereit ist
EndProc

Proc AnsiString
  Parameters _Offs&
  Declare _AString$
  _AString$ = MkStr$(Chr$(0), 260)
  ~WideCharToMultiByte(~CP_ACP,0,_Offs&,-1,Addr(_AString$),260,0,0)
  Return Trim$(_AString$)
EndProc

Proc DropFileFormat
  Declare _Data&, _Offs&, _File$, _FileList$, _Files&
  If ~OpenClipBoard(%HWnd) <> 0
    _Data& = ~GetClipboardData(~cf_HDrop)
    _Offs& = Long(_Data&, 0)
    _File$ = AnsiString (_Data& + _Offs&)
    While _File$ <> ""
      Inc _Files&
      _FileList$ = _FileList$ + Chr$(13) + Chr$(10) + _File$
      _Offs& = _Offs& + Len(_File$)*2 + 2
      _File$ = AnsiString (_Data& + _Offs&)
    EndWhile
  EndIf
  ~CloseClipboard()
  SetText Text&, @Del$(_FileList$, 1, 2)
  Static$ = "HDrop-Struktur mit " + Str$(_Files&) + " Einträgen"
  ShowText 2
EndProc

Proc XFormat    ' Aktion Unbekanntes Format
  Parameters _Static$
  ShowText 0
  Static$ = _Static$
  IsPic& = 0
EndProc

Proc ClipAction         ' Änderungen des Inhalts der Zwischenanlage auswerten
  Declare _Icon&
  CLS ~GetSysColor(~Color_BtnShadow)
  If ~CountClipboardFormats()
    If ~IsClipboardFormatAvailable(~cf_Text)
      Textformat
    ElseIf ~IsClipboardFormatAvailable(~cf_Bitmap)
      BildFormat
    ElseIf ~IsClipboardFormatAvailable(~cf_HDrop)
      DropFileFormat
    Else
      XFormat "Nicht darstellbar"
    EndIf
  Else
    XFormat "Leer"
  EndIf
  Size
  Case NextViewer& : SendMessage(NextViewer&, ~wm_DrawClipboard, &uwParam, &ulParam)
  ' Kommando durchreichen an nächsten Viewer
EndProc

Proc CopyEdit
  ClearClip
  PutClip GetText$(Text&)
  ClipAction
EndProc

Proc CBChain    ' Änderung der Viewerkette behandeln
  If &uwParam = NextViewer&
    NextViewer& = &ulParam
  ElseIf NextViewer& <> 0
    SendMessage(NextViewer&, ~wm_ChangeCBChain, &uwParam, &ulParam)
  EndIf
EndProc

Proc MakeTextDisplay
  Font& = ~GetStockObject(~Default_GUI_Font)
  ~GetObject(Font&, 60, Buffer#)
  Long Buffer#, 0 = 16
  Long Buffer#, 4 = 0
  Font& = ~CreateFontIndirectA(Buffer#)                 ' Eigenen Font basiert auf Systemschrift Default_GUI_Font
  SetDialogFont Font&
  Text& = Create("MultiEdit", %HWnd, "", 0, 0, 0, -1)   ' Textanzeige
  SendMessage(Text&, ~em_SetReadOnly, 1, 0)             ' Text als NurLesen anzeigen
  IsText& = 1
  Static& = Control("Static", "", $50000000, 0, 0, 0, 0, %HWnd, 100, %HInstance, $200)  ' Statusanzeige
  DelBtn& = Create("Button", %HWnd, "Löschen", 2, 2, 64, 22)
  EditBtn& = Create("CheckBox", %HWnd, "Bearbeiten", 88, 3, 88, 20)
  CopyBtn& = Create("Button", %HWnd, "Alles kopieren", 176, 2, 96, 22)
  Size
EndProc

WindowStyle 575
WindowTitle "ClipView"
Window %MaxX\12, %MaxY\12 - %MaxX\2, %MaxY\2
UseIcon "Windows"
CLS ~GetSysColor(~Color_BtnShadow)
Set("FastMode", 1)
Set("ErrorLevel", 0)
MakeTextDisplay
NextViewer& = ~SetClipboardViewer(%HWnd)        ' Viewer anmelden
UserMessages ~wm_DrawClipboard, ~wm_ChangeCBChain
ClipAction
While 1
  WaitInput
  SendMessage(Text&, ~em_SetReadOnly, Not(GetCheck(EditBtn&)), 0)
  EnableWindow CopyBtn&, GetCheck(EditBtn&)
  If %Key = 2
    Break
  ElseIf %Key = 4
    Size
  ElseIf %UMessage = ~wm_DrawClipboard
    ClipAction
  ElseIf %UMessage = ~wm_ChangeCBChain
    CBChain
  ElseIf %Key = 255
    If GetFocus(DelBtn&)
      ClearClip
      ClipAction
    EndIf
  ElseIf GetFocus(CopyBtn&)
    CopyEdit
  EndIf
EndWhile
Dispose Rect#
Dispose Bitmap#
Dispose Buffer#
DeleteObject Font&
~ChangeClipboardChain(%HWnd, NextViewer&)       ' Viewer abmelden, unbedingt bei Ende ausführen!!!
Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 13.02.2011, 13:46   #6 (Direktlink)
Dauergast
 
Benutzerbild von p. specht
 
Registriert seit: 06.02.2009
Ort: Wien, Österreich
Beiträge: 1.078
Standard

Gratulation - Super Sache, die ich persönlich sehr nützlich finde!
Gruss

P.S.: Könnte man noch was ergänzen, damit Änderungen automatisch sichtbar werden und nicht erst nach einem Fenster-Resize?
__________________
Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,XPSE,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB2:USB3
p. specht ist offline   Mit Zitat antworten
Alt 13.02.2011, 14:04   #7 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard

Zitat:
Zitat von p. specht Beitrag anzeigen
Könnte man noch was ergänzen, damit Änderungen automatisch sichtbar werden und nicht erst nach einem Fenster-Resize?

Wenn ich bei mir die Viewer neben einem Editor oder einer Bildbearbeitung liegen habe, dann wird der Viewer augenblicklich aktualisiert. Sogar in mehreren Instanzen, wenn ich den mehrmals starte.
Wenn du allerdings die Vorschau in der Taskleiste meinst, das klappt nicht, wenn der Viewer minimiert ist. Schau Dir zum Beispiel mal ein Video an und minimiere den Player. Der Ton läuft weiter aber das Vorschaufenster wird eingefroren. Liegt wohl daran, dass minimierte Fenster grundsätzlich nicht mehr wirklich zeichen. Und die Vorschau holt sich nur bei Änderungen einen "Screenshoot" vom Programm ab. Denke ich mir zumindest so.
Im Moment fällt mir da nur eine Lösung ein. Das Verkleinern abfangen und statt dessen nach außerhalb des Bildschirm verschieben. Aber da will ich nicht ran. Dann kommt garantiert jemand, der dann anmeckert, und das zu recht, dass beim Verkleinern das Teil immer plötzlich mitten auf seinem zweiten Bildschirm prangt.
Aber vielleicht hat da jemand eine Idee.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Alt 13.02.2011, 14:43   #8 (Direktlink)
Dauergast
 
Benutzerbild von p. specht
 
Registriert seit: 06.02.2009
Ort: Wien, Österreich
Beiträge: 1.078
Standard

Hm... also Beispiel Kleines Bild nach Großem Bild in der Ablage kommt bei mir nicht automatisch, sondern erst nach einem Resize des Fensters zur Anzeige... Wobei ich dazu sagen muss, daß ich dein Programm zu einer exe compiliert habe. Ich hab XP SP2 pro, vielleicht ist ja die Betriebssystemversion schuld...
__________________
Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,XPSE,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB2:USB3
p. specht ist offline   Mit Zitat antworten
Alt 13.02.2011, 15:20   #9 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard

Hatte es bisher nur als PRF laufen nun aber als EXE unter VISTA SP2. Ich kann da abwechselnd ein großes Bild mit über 2000 Pixel Breite und Höhe und ein Icon und wieder so ein Riesenbild in die Zwischenablage setzen, das wird auch als EXE immer sofort angezeigt. Da bin ich erst mal ratlos.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Alt 13.02.2011, 15:30   #10 (Direktlink)
Dauergast
 
Benutzerbild von p. specht
 
Registriert seit: 06.02.2009
Ort: Wien, Österreich
Beiträge: 1.078
Standard

Lass gut sein, mit Texten klappt es ohnehin, und das ist viel wichtiger!
Danke nochmal!
__________________
Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,XPSE,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB2:USB3
p. specht ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 13.02.2011, 18:01   #11 (Direktlink)
Forenmaskottchen
 
Benutzerbild von ts-soft
 
Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
Standard

Zitat:
Zitat von Volkmar Beitrag anzeigen
@Thomas, der Button zum Löschen ist da und auch die Anzeige der cf_HDrop-Daten funktioniert.
Sehr schön, so erfüllt es dann auch seinen Zweck und ist mir Sklave
__________________
Gruß Thomas

Wenn mir früher jemand gesagt hätte, ich würde
freiwillig eine Wanze mit mir herum tragen und sie
auch noch selbst aufladen, hätte ich laut gelacht.

Heute habe ich ein Smartphone.


http://realsource.de
ts-soft ist gerade online   Mit Zitat antworten
Alt 13.02.2011, 18:17   #12 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard

Hallo Thomas

Prima, wenns bei Dir passt.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Alt 13.02.2011, 18:38   #13 (Direktlink)
Forenmaskottchen
 
Benutzerbild von ts-soft
 
Registriert seit: 16.05.2010
Ort: Berlin
Beiträge: 724
Standard

Zitat:
Zitat von Volkmar Beitrag anzeigen
Hallo Thomas

Prima, wenns bei Dir passt.

Gruß Volkmar
Hätteste aber vor ein paar Wochen machen sollen , da habe ich versucht
meine Sourcen zum kopieren und einfügen von Dateien aus der
Zwischenablage nach XProfan zu übertragen. Ist leider laufend fehlgeschlagen,
weil entweder was am Format nicht stimmte oder der Speicher dafür nicht
gültig war (nimmt wohl keine Buffer#). Wenn ich mich da nochmal ransetze
könnte ich evtl. den Fehler sehen .
__________________
Gruß Thomas

Wenn mir früher jemand gesagt hätte, ich würde
freiwillig eine Wanze mit mir herum tragen und sie
auch noch selbst aufladen, hätte ich laut gelacht.

Heute habe ich ein Smartphone.


http://realsource.de
ts-soft ist gerade online   Mit Zitat antworten
Alt 13.02.2011, 19:14   #14 (Direktlink)
Forenmaskottchen
 
Registriert seit: 23.01.2011
Ort: Bernburg
Alter: 58
Beiträge: 756
Standard

Zitat:
Zitat von ts-soft Beitrag anzeigen
Hätteste aber vor ein paar Wochen machen sollen
Wenn ich das gewußt hätte und schon hier angemeldet gewesen wäre.

Die Übergabe von Daten ist eben auch nicht mehr das, was sie mal war. Unter 16 Bit da konnte man noch einfach einen Zeiger auf irgendwelche Daten nach überallhin übergeben. aber heutzutage läuft eben jeder Prozeß in einem eigenen, virtuellen Adressraum. Kaum erreichst Du die Grenzen Deiner Anwendung, schon sind alle Adressen ungültig. Da bleiben dann nur noch ein Dateiobjekt oder die Zwischenablage zur Übergabe.
Da hatte ich heute früh auch erst mal ein Brett vorm Kopf. Es kam bei der Dateiliste immer nur der erste Buchstabe des ersten Dateinamens an. Naja, wie auch anders, wenn es doch die Struktur in der Zwischenablage einfach auf ein Array of Widechar zeigt. Da war eben mit Ansistrings nach dem ersten Zeichen schon Schluß.

Gruß Volkmar
Volkmar ist gerade online   Mit Zitat antworten
Alt 13.02.2011, 20:56   #15 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.093
Standard

Weitere Möglichkeiten sind verschiedenen Controls. Pack Text in ein Editfeld oder noch besser ein Control mit eigener Class und du kannst darauf zugreifen.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Antwort

  Paules-PC-Forum.de > Programmierung > XProfan > Helfer & Tools

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an




Alle Zeitangaben in WEZ +2. Es ist jetzt 16:51 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Powered by vBCMS® 2.7.0 ©2002 - 2012 vbdesigns.de
(c) Paules-PC-Forum.de

::: Impressum :::

Search Engine Optimization by vBSEO 3.3.2