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

XProfan Alles rund um die Programmiersprache XProfan.

EM-Tippspiel

Paule bei Facebook


Paule bei Twitter


Letzte Forenthemen
Gehe zum ersten neuen Beitrag PPF - Spiel "Wörter weiter...
Aufrufe: 26970, Antworten: 4223
Gehe zum ersten neuen Beitrag PPF - Shoppingwahn
Aufrufe: 50963, Antworten: 1397
Gehe zum ersten neuen Beitrag Algorithmen Teil IV...
Aufrufe: 3361, Antworten: 128
Gehe zum ersten neuen Beitrag Pc lahmt plötzlich
Aufrufe: 186, Antworten: 6
Gehe zum ersten neuen Beitrag Bundesliga-Tippspiel Saision...
Aufrufe: 7670, Antworten: 186
Gehe zum ersten neuen Beitrag PC fährt nicht mehr hoch.
Aufrufe: 0, Antworten: 0
Gehe zum ersten neuen Beitrag Von Live CD Windowspfad...
Aufrufe: 329, Antworten: 19
Gehe zum ersten neuen Beitrag Captur 2.2 (Snow Leo)
Aufrufe: 28, Antworten: 0
Gehe zum ersten neuen Beitrag Captur 2.3 (Lion)
Aufrufe: 34, Antworten: 0
Gehe zum ersten neuen Beitrag Acer Aspire 8745ZG fährt...
Aufrufe: 69, Antworten: 6
Zeige:





Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11.05.2009, 07:57   #1 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Frage Programm-Icon in Gridbox

Die Zeile habe ich von Andreas Hötker:
Zitat:
IconHandle&=External("SHELL32.dll","ExtractIconA",%HINSTANCE,addr(Name_der_EXE$) ,0)
Das ist eine Gridbox, die in einem Tool EXE-Dateien anzeigt:
Zitat:
grid00&=CREATE("GRIDBOX",%Hwnd,titel00$,1,5,25,250,320)
Wie kann ich jetzt die Gridbox "überreden", vor jeder EXE-Datei auch das dazu gehörende Icon zu zeigen
Es geht, aber bei mir ist 'Ladehemmung'
Finde einfach keinen Einstieg
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 11.05.2009, 09:29   #2 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

So in der Art (kein lauffähiger Quelltext):
Code:
 
Declare Iconliste&, Iconnummer_in_der_Liste&
 
Declare Zeile#
 
Struct LVITEM=IMASK&,ITEM&,ISUBITEM&,State&,StateMask&,ITEXT&,ITEXTMAX&,IIMAGE&,ILPARAM&
 
Proc Iconliste_Erzeugen
 Parameters Handle_der_Listview&, Iconbreite&, Iconhöhe&
 Case Iconliste&<>0 : External("comctl32.dll","ImageList_Destroy",Iconliste&)
 Iconliste&=External("Comctl32.dll","ImageList_Create",Iconbreite&,Iconhöhe&,$FE | $1,4,8)
 sendmessage(Handle_der_Listview&,$1003,1,Imagelist&)
endproc
 
Proc Icon_Hinzufügen
 Parameters IconHandle&
 Iconnummer_in_der_Liste&=Iconnummer_in_der_Liste&+1
 External("comctl32.dll","ImageList_AddIcon",Iconliste&,IconHandle&)
endproc
 
Proc Listviewzeile_hinzufügen
 Parameters Lvhndl&,Index&,spalte&,Text$,Image&
 Dim Zeile#,LVITEM
 Clear Zeile#
 IF Image&=0
  Zeile#.IMASK&=$0001
 else
  Zeile#.IMASK&=$000B
  Zeile#.IIMAGE&=IMAGE&
 endif
 Zeile#.ITEM&=Index&
 Zeile#.ITEXT&=Addr(Text$)
 Zeile#.ITEXTMAX&=Len(Text$)
 IF spalte&=0
  ItemNumber&=Sendmessage(Lvhndl&,$1007,0,Zeile#)
 else
  Zeile#.ISUBITEM&=spalte&
  ItemNumber&=Sendmessage(Lvhndl&,$102E,Index&,Zeile#)
 endif
 Dispose Zeile#
Endproc
 
Clear Iconliste&
Iconnummer_in_der_Liste&=-1
grid00&=CREATE("GRIDBOX",%Hwnd,titel00$,1,5,25,250 ,320) 
Iconliste_Erzeugen grid00&,17,17
'........
IconHandle&=External("SHELL32.dll","ExtractIconA", %HINSTANCE,addr(Name_der_EXE$),0)
Icon_Hinzufügen IconHandle&
DeleateObject IconHandle&
Listviewzeile_hinzufügen grid00&,0,0,"Name_der_EXE",Iconnummer_in_der_Liste&
'........
IconHandle&=External("SHELL32.dll","ExtractIconA", %HINSTANCE,addr(Name_der_EXE$),0)
Icon_Hinzufügen IconHandle&
DeleateObject IconHandle&
Listviewzeile_hinzufügen grid00&,1,0,"Name_der_EXE",Iconnummer_in_der_Liste&
Vielleicht geht's auf Xprofan11 einfacher.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 11.05.2009, 15:39   #3 (Direktlink)
Forenmaskottchen
 
Benutzerbild von Bangkok
 
Registriert seit: 09.02.2009
Ort: Bangkok
Beiträge: 686
Standard Icon für datei

Hallo Horst,

Ich habe sowas mal für einen Datei-Commander gemacht. Leider habe ich den Code durch einen Crash verloren.

Vom Weg her habe ich eine leere Imageliste angelegt dann jede Datei über die
API ExtractAssociatedIcon geschickt und das Iconhandle der Imageliste zugefügt und dann das jeweilige Icon der Datei zugefügt. So bekommst du das Icon für alle Dateien, nicht nur Exe-Dateien.
In die Listview habe ich dann die Datei mit Icon mit folgendem Code eingefügt.
Aufruf ist Add_Item(Handle,feld1,feld2,usw,Iconnummer)

proc Add_item
Declare NewIndex&,Count&,Line&,LV_ITEM#,hdl&
hdl& = @&(1)
If (getcount(hdl&) < 0)
Line& = getcount(hdl&)+1
Else
Line& = getcount(hdl&)
EndIf
SendMessage(hdl&, 11, 0, 0)
Dim LV_ITEM#, 500
Let Count& = 0
Long LV_ITEM#,0 = 11
Long LV_ITEM#,4 = Line&
Long LV_ITEM#,8 = Count&
Long LV_ITEM#,12 = 0
Long LV_ITEM#,16 = 0
Long LV_ITEM#,20 = (LV_ITEM#+36)'text
Long LV_ITEM#,24 = 261
Long LV_ITEM#,28 = @&(%Pcount)
Long LV_ITEM#,32 = 0
let Count&=count&+2
String LV_ITEM#,36 = @$(Count&)
Let NewIndex& = @SendMessage(hdl&,$1007,0,LV_ITEM#)
Long LV_ITEM#,28 = 0
While (Count& < %PCount)
Long LV_ITEM#,8 = Count&-1
Inc Count&
String LV_ITEM#,36 = @$(Count&)
@Sendmessage(hdl&,4142,NewIndex&,LV_ITEM#)
EndWhile
dispose LV_ITEM#
SendMessage(hdl&, 11, 1, 0)
Return NewIndex&
endproc

Gruß

Dieter
__________________
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai.
http://dieterzornow.gmxhome.de
Bangkok ist offline   Mit Zitat antworten
Alt 11.05.2009, 17:00   #4 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Die Listview.dll benutzt die API SHGetFileInfo, um die Iconhandle zu erhalten. Habe damit die besseren Erfahrungen gemacht, die Qualität der Icons betreffend.
Einsetzen ins Listview geht mit der Message LVM_SETITEM.
__________________
Gruß, Frank


Webpage http://frabbing.bplaced.net
mit Freeware - Tools, Spiele und Grafiken.
Frabbing ist offline   Mit Zitat antworten
Alt 12.05.2009, 17:38   #5 (Direktlink)
Erfolgreich angemeldet
 
Registriert seit: 13.02.2009
Beiträge: 19
Standard

Hi Leute!

Hier ein Beispiel für Xprofan 11:
Code:
window 450,300
$H Messages.ph
$H Windows.ph
$H commctrl.ph
declare Lv#
struct Lv=Mask&,Item&,SubItem&,State&,StateMask&,Text&,TextMax&,Image&
dim Lv#,Lv
 
proc LvSetIcon'---------------------------------------------LvSetIcon
Lv#.Item&=&(2)
Lv#.SubItem&=&(3)
Lv#.Mask&=~LVIF_IMAGE
Lv#.Image&=%(4)
sendmessage(&(1),~LVM_SETITEM,0,Lv#)
endproc'-------------------------------------------------------------
 
var IcoList&=create("ImageList",16,16)
ImageList("AddIcon",IcoList&,~LoadIcon(0,32512))
ImageList("AddIcon",IcoList&,~LoadIcon(0,32513))
ImageList("AddIcon",IcoList&,~LoadIcon(0,32514))
ImageList("AddIcon",IcoList&,~LoadIcon(0,32515))
var a$="Spalte 1;0;120;Spalte 2;0;120;Spalte 3;0;120"
var Lv&=create("gridbox",%hwnd,a$,0,10,30,400,200)
sendmessage(Lv&,~LVM_SETIMAGELIST,~LVSIL_SMALL,IcoList&)
sendmessage(Lv&,~LVM_SETEXTENDEDLISTVIEWSTYLE,0,~LVS_EX_SUBITEMIMAGES | ~LVS_EX_GRIDLINES)
'--Gitterlinien überzeichnen Icons teilweise!
 
'--Lv ohne Header:
'setstyle Lv&,getstyle(Lv&) | ~LVS_NOCOLUMNHEADER
 
a$="Test x a|Test x b|Test x c|Test x d|Test x e"
whileloop 1,5
    addstring(Lv&,translate$(a$,"x",str$(&loop)))
endwhile
 
LvSetIcon(Lv&,0,0,1)'--Aufruf: LvSetIcon(Handle&,Zeile%,Spalte%,Icon%)
LvSetIcon(Lv&,1,1,2)'--Werte für Zeile,Spalte,Icon 0-basiert!
LvSetIcon(Lv&,2,2,3)
LvSetIcon(Lv&,3,0,getcount(IcoList&))
LvSetIcon(Lv&,4,0,99)
LvSetIcon(Lv&,4,2,0)
 
while 1
    waitinput
endwhile
HTH
Pascal
Uwe 'Pascal' ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Alt 12.05.2009, 17:56   #6 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Beitrag

@Hallo Pascal
Schön, dass du dich auch mal meldest.
Den Code, den du postest, habe ich. Aber der nützt mir nichts.
Die Gridbox, auf die es bei mir ankommt, listet EXE-Dateien auf, die auf der Festplatte des jeweiligen Systems vorhanden sind.
Jede EXE-Datei hat normal ein Programm-Icon (XProfan z. B. das "P") und dieses Icon möchte ich vor dem EXE-Eintrag in der Gridbox anzeigen.
Es ist möglich, aber ich habe "keinen Dunst", wie das gehen soll !
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Alt 12.05.2009, 18:46   #7 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Hab dir grad was geschickt. Musste erst XProfanFree installieren, deswegen hat's etwas gedauert.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 13.05.2009, 09:27   #8 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Lächeln

Hallo an alle Tipp-Geber
Andreas Hötker hat den Zuschlag - Mit seinem Tipp geht die Sache in die "Endrunde"
Danke noch mal für alle Tipps


__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Alt 13.05.2009, 17:32   #9 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Ich wusste ja, wofür du das brauchst, hab's darauf zugeschnitten.

PS: Vor dem Neuscannen evtl. die Iconliste (Imageliste) neu erstellen, damit nicht immer wieder die sowieso schon vorhandenen Icons neu hinzugefügt werden. Das Ding wird sonst suf Dauer zum Speicherfresser.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 14.05.2009, 16:53   #10 (Direktlink)
Super-Moderator
 
Benutzerbild von Frabbing
 
Registriert seit: 05.02.2009
Ort: Westliches NRW
Alter: 44
Beiträge: 5.094
Standard

Zitat:
Zitat von AHT Beitrag anzeigen
Ich wusste ja, wofür du das brauchst, hab's darauf zugeschnitten.

PS: Vor dem Neuscannen evtl. die Iconliste (Imageliste) neu erstellen, damit nicht immer wieder die sowieso schon vorhandenen Icons neu hinzugefügt werden. Das Ding wird sonst suf Dauer zum Speicherfresser.
Ja, und vor allem die Iconhandle freigeben...
__________________
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

Alt 14.05.2009, 17:10   #11 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Beitrag

...Ja, ja und vor allen Dingen der XProfan-Gridbox ihr komisches Sortieren abgewöhnen - anscheinend sortiert die nämlich nach dem Einlesen der Icons nach den Werten der Icons
Da muss Roland noch mal ran

Auf dem ScreenShot weiter oben sieht man das - es wird nicht alphabetisch sortiert
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de

Geändert von horsthorn (14.05.2009 um 17:13 Uhr) Grund: "Druckfehler !"
horsthorn ist offline   Mit Zitat antworten
Alt 14.05.2009, 17:18   #12 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Zitat:
Zitat von horsthorn Beitrag anzeigen
Hallo an alle Tipp-Geber
Andreas Hötker hat den Zuschlag - Mit seinem Tipp geht die Sache in die "Endrunde"
Hallo Horst - hab grad deinen Screenshot entdeckt.
Vielleicht wäre es ganz günstig, das erste Icon von den dreien in der Liste durch ein rotes Warnicon zu ersetzen, wenn dort etwas nicht stimmt und ansonsten immer ein grünes Icon für OK zu verwenden...
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 14.05.2009, 17:38   #13 (Direktlink)
AHT
Super-Moderator
 
Registriert seit: 15.02.2009
Beiträge: 10.786
Standard

Zitat:
Zitat von horsthorn Beitrag anzeigen
...Ja, ja und vor allen Dingen der XProfan-Gridbox ihr komisches Sortieren abgewöhnen - anscheinend sortiert die nämlich nach dem Einlesen der Icons nach den Werten der Icons
Da muss Roland noch mal ran

Auf dem ScreenShot weiter oben sieht man das - es wird nicht alphabetisch sortiert
Windows sortiert das Listview nach dem bei der Erstellung angegebenen Listviewstil. Fügst du eine Zeile hinzu, bleibt diese Zeile bei einer alphabetischen Sortierung nicht an dem Ort, den du anfangs zugewiesen hast. Willst du dieser Zeile weitere Elemente zuordnen (zum Beispiel ein neues Icon), musst du die Zeilennumer in der Listview wissen, in der sich das Element nach der Sortierung befindet.
Ohne Sortierung listet das Tool die Prozesse so, wie sie gestartet wurden. Das ist bei einem Tool, das unter anderem Hinweise auf Malware geben soll, vorteilhafter, als die Prozesse nach dem Alphabet zu sortieren.

Die Zeilennumer, an der sich die jeweilige Zeile nach der Sortierung befindet, ist das Ergebnis der Message
Code:
Sendmessage(Lvhndl&,$1007,0,Zeile#)
.
__________________
______________

Bitte Schnelltest durchführen: Neuer Virus, ahnungslose User seit Monaten infiziert!

Mfg

AHT
AHT ist offline   Mit Zitat antworten
Alt 14.05.2009, 18:15   #14 (Direktlink)
RGH
Forenmaskottchen
 
Benutzerbild von RGH
 
Registriert seit: 08.02.2009
Ort: Nußloch (bei Heidelberg)
Beiträge: 550
Standard

Zitat:
Zitat von horsthorn Beitrag anzeigen
...Ja, ja und vor allen Dingen der XProfan-Gridbox ihr komisches Sortieren abgewöhnen - anscheinend sortiert die nämlich nach dem Einlesen der Icons nach den Werten der Icons
Da muss Roland noch mal ran
Da müßtest Du Dich schon an Microsoft wenden. Wenn die Listbox den Stil "sortiert" hat, sortiert sie nach der ersten Spalte.

Wenn Du es anders möchtest, ist "Handarbeit" angesagt ... oder Franks ListView.DLL, die diese für Dich rasend schnell abnimmt.

Gruß
Roland
__________________
Pentium D 2,8 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon HD5450 1024 MB / Windows 7(32) - XProfan X2.0c
AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 / Windows 7(64) - XProfan X2.0c


http://www.xprofan.de
RGH ist offline   Mit Zitat antworten
Alt 14.05.2009, 18:54   #15 (Direktlink)
MoRoGeP-Träger 2011
 
Benutzerbild von horsthorn
 
Registriert seit: 06.02.2009
Ort: Heidelberg
Alter: 71
Beiträge: 1.878
Beitrag

@Roland
Da Frank weiß, daß ich ein Fan von der LISTVIEW.DLL bin, wird er mir verzeihen, wenn ich sage, ich will ein "Stand-Allone"-Programm schreiben! Also ohne DLL !
...und da ich ein sturer alter Mann bin und Andreas Hötker immer noch "1 Ass im Ärmel hat", werde ich das auch hinkriegen

Ich hab ja schon eine Version mit DLL geschrieben - aber da werden die Icons nicht so angezeigt, wie mir das vorschwebt (Frank weiß Bescheid)
__________________
Gruss, horst
Computer werden kleiner und kleiner, bald verschwinden sie völlig.
(Ephraim Kishon 1924-2005)

Win7-Home-Premium 32-Bit - XProfan12.0ß-S14 - Chrome-18.0.1025.142 m
http://www.web-treffpunkt.de
horsthorn ist offline   Mit Zitat antworten
Werbung

Windows 7 Tipps und Tricks in Bildern

Antwort

  Paules-PC-Forum.de > Programmierung > XProfan

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
IE Icon weg Unregistriert Windows XP 5 02.03.2009 14:09
Icon Programm Peter Software - Allgemein 5 01.04.2007 09:40
WinXP Papierkorb Icon :=> Größe ändern?! Vista Icon?! NilsG Windows XP 0 05.09.2006 16:15
Icon ändern (programm profan)? Poeli Sonstige Programmiersprachen 20 13.06.2005 15:12
Shell-Icon durch eigenes Icon ersetzen Drago Windows XP 2 08.12.2003 11:42



Alle Zeitangaben in WEZ +2. Es ist jetzt 11:59 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