Français
Forum

Feste Spaltenbreite

 
- page 1 -



Normann
Strübli
Salut,

de mir était dans dernier Zeit wieder wenig trop lesen là je mich
plus um mon Hardware-projet gekümmert habe. mais tut oui nix
zur l'affaire :roll:

Aussi hab je angefangen avec MASM angefangen avec cela Je l' genialen
XPIA enfin vernünftig nutzen peux
Habe mir cela livre Assembler - Grundlagen qui Programmation de
Marcus Roming et Joachin Rhode gekauft quoi meiner attitude pour pour
Assembler Débutant bestens approprié ist. Sicherlich gibt es im
Internet aussi viele Anleitungen, mais un petite wenig Werbung musste à
cet Stelle la fois son là mir cela livre si bien comme

et Frank hat droite si il sagt Assembler ist generell gar pas so
schwer - alors ran! Es lohnt sich.

So NU mais enfin mon eigentliche Frage:
je voudrais chez den Spalten volontiers une Sortierung pour eigenen Kriterien durchführen laisser.
je voudrais alors pour mehreren Eigenschaften gleichzeitig sortieren
laisser - z.B. pour Produktgruppe UND la couleur. en supplément habe je simple une Spalte erstellt avec dem le contenu R123 comme Beispiel. R steht pour qui la couleur rouge et 123 arrêt pour quoi d'autre. si je cet Spalte eh bien Trier lasse habe je mon but déjà erreicht, allerdings soll qui Anwender de cet Spalte oui nix voyons - wär oui blöd. simple qui Spaltenbreite sur 0 trop mettons bringt oui nix là on vous oui wieder plus large faire peux.
peux on alors bestimmte spalten dans qui Breite irgendwie fixieren?
si cela sur normalen wege pas allez vois Du Frank là une chance cela dans Votre Dll irgenwie avec aufzunehmen? ensuite pourrait on aussi autre Informationen dans qui Listview verstecken z.B. eindeutige ID-Nummern qui qui Anwender pas sieht on mais quand même auslesen peux.

gruß
Normann
 
07.03.2005  
 



 
- page 1 -



Frank
Abbing
allô Normann et iF,

[quote-part:a341181023]peux on einer solchen Listview pas dire cela qui Spaltenbreiten pas par den Anwender veränderbar sommes? [/quote-part:a341181023]
cela allez meines Wissens pour pas.
mais il y a toutefois une Methode, qui du dans deine Profan-Waitinput-Boucle saisir peux. mon Testcode Gebührenverwaltung_Stammtisch.prf pouvoir cela oui aussi so:
KompilierenMarqueSéparation
x&=0
y&=GetColumnWidth(listview&,0)
Case y&<>130:x&=1
y&=GetColumnWidth(listview&,1)
Case y&<>110:x&=1
y&=GetColumnWidth(listview&,2)
Case y&<>110:x&=1
y&=GetColumnWidth(listview&,3)
Case y&<>110:x&=1
y&=GetColumnWidth(listview&,4)
Case y&<>110:x&=1
y&=GetColumnWidth(listview&,5)
Case y&<>110:x&=1

If x&

    *** Wenn ja, dann "linker Mausknopf losgelassen" simulieren und ursprüngliche
    *** Spaltenbreiten wieder herstellen.
    mouse_event(4,0,0,0,0)
    SetColumnWidth(listview&,0,130)
    SetColumnWidth(listview&,1,110)
    SetColumnWidth(listview&,2,110)
    SetColumnWidth(listview&,3,110)
    SetColumnWidth(listview&,4,110)
    SetColumnWidth(listview&,5,110)

EndIf


là es chez dir seulement um une la ligne allez, ist qui Aufwand oui encore geringer
Incidemment peux du oui aussi encore un zweites, unsichtbares Listview generieren...

Willkommen chez Assembler, Normann! Allerdings doit je dir dire: Windows 64 Bit steht avant qui porte et là wird sich pour Assembler einiges changement... :roll:
 
08.03.2005  
 




Normann
Strübli
[quote-part:07f3459f4b]Windows 64 Bit steht avant qui porte et là wird sich pour Assembler einiges changement...[/quote-part:07f3459f4b]Na tu es oui bien - mach mir seulement mut!
Bleibt doch mais alles Abwärtskompatibel... ou bien pas?!
Aussi si on qui Grundlagen kennt ensuite kanns oui pas verkehrt son.

 
09.03.2005  
 




Normann
Strübli
et und dir doch!

unzwar viel eleganter

Frank, s'il te plaît guck dir cela ganze la fois genauer à.
Eigentlich gar pas so schwer, wäre alors joli si Dus ensuite doch dans deine
Listview.dll intégrer könntest (büdde!)
ensuite braucht on den kram avec dem Subclassing pas.
qui Voir le texte source est un geänderter de Deinen Beispielen - weils pour mich so plus rapide ging.

je voudrais cela aussi encore dahingehend erweitern, cela seulement bestimmte Spalten fest sommes.

quoi meint Du?
KompilierenMarqueSéparation
 $H windows.ph
 $H structs.ph
 $H messages.ph
 $H commctrl.ph
 $H Structs.ph
set("FastMode",1)
Strukturen
STRUCT HD_NOTIFY = ~HD_NOTIFY
DECLARE HD_NOTIFY#
Dim HD_NOTIFY#,HD_NOTIFY
Declare bereich#,listview&,lvdll&,text$,bytes&,bereich#,x&,y&,z&
Def GetSysColor(1) !"USER32","GetSysColor"
 $I Listview_Funktionen.inc

proc ListviewCallback

    Parameters Wnd&, Msg&, WParam&, LParam&

    if Msg& = ~WM_NOTIFY

        HD_NOTIFY# = lparam&

        if HD_NOTIFY#.iItem& = ~HDN_BeginTrackW  Die HDN_BeginTrack Botschaft abfangen und löschen!

            If @GetCheck(Check&)

                return 1

            endif

        else

            Return ~CallWindowProc(~GetProp(Wnd&,"OldCallback"),Wnd&, Msg&,WParam&,LParam&)

        endif

    endif

    Return ~CallWindowProc(~GetProp(Wnd&,"OldCallback"),Wnd&, Msg&,WParam&,LParam&)

Endproc

lvdll&=usedll("Listview.dll")
SetTrueColor 1
Windowstyle 543
Windowtitle "Listview mit fester Spaltenbreite"
Window 0,0-600,600
Cls GetSysColor(15)
Usefont "MS Sans Serif",10,0,0,0,0
SetDialogFont 1
x&=MixRGBs(GetSysColor(15),$00ffffff)
listview&=CreateListView(%hwnd,%hinstance,0,x&,-1,$31)
Declare Check&
Check& = @Create("CheckBox",%hwnd,"Spaltenbreite Fixieren",400,30,120,20)
text$="LVData/Laeufer_mit_Header.csv"
bytes&=@FileSize(text$)

If bytes&>0

    Dim bereich#,bytes&
    ReadFileQuick(addr(text$),bereich#,0,bytes&)
    x&=SetColumnsFromMem(listview&,bereich#,addr(y&))
    CsvToListview(listview&,(bereich#+y&),(bytes&-y&),x&)
    Dispose bereich#

EndIf

*** Die Breite der drei ersten Spalten korregieren
SetColumnWidth(listview&,0,-1)
SetColumnWidth(listview&,1,-1)
SetColumnWidth(listview&,2,-1)
AutoSortListview listview&,1,1,1,1,2,2
ShowListView(listview&,32,32,354,456)
InitMessages(%hwnd)
~SetProp(listview&,"OldCallback",~SetWindowLong(listview&,~GWL_WNDPROC, ProcAddr(ListviewCallback,4)))

While 1

    waitinput
    Case %key=2:BREAK

Wend

CloseMessages(%hwnd)
freedll lvdll&
 $I Listview_Dispose
font> Fin
 
09.03.2005  
 




Jörg
Sellmeyer
allô Normann,
c'est oui fantastisch. Aussi ist qui festlegung bestimmter Spalten droite simple.
il faut seulement dans qui Callbackroutine qui Si-Abfrage erweitern:
KompilierenMarqueSéparation
If And(@GetCheck(Check&),HD_NOTIFY#.iButton& = 1)

    Messagebox("Das geht nicht!","Ätsch!!",0)
    return 1

End

Salut
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
09.03.2005  
 




Normann
Strübli
Hi Jörg,

*lol* comment simple.
mais nu sag mir encore s'il te plaît wieso cela so ist.
(Seh justement den forêt avant lauter Bäumen pas)
dans qui Win32 steht doch folgendes:
[quote-part:75fbb01985]
iButton
index of le mouse button involved dans generating le notification message. This member can être one of these values:

ValueMeaning
0À gauche button
1Right button
2Middle button
[/quote-part:75fbb01985]
alors wieso ist cela iButton avec dem En-tête-index bestückt et pas avec qui gedrückten souris-bouton?
Hä?

Salut
Normann
 
09.03.2005  
 




Jörg
Sellmeyer
Tja, là wirst Du wohl BG fragen doit. je habs par puren
Zufall rausgekriegt. Bevor je dans qui Aider nachgelesen habe,
habe je simple la fois la valeur pour Button getestet.
Hätte je auparavant nachgelesen, wäre je wohl aussi pas sur elle
gekommen
Salut
Jörg
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
09.03.2005  
 




Frank
Abbing
Hi,

oui, funktioniert bien! avec cette Notifymessage J'ai eu mich encore gar pas richtig beschäftigt
Werde je fest einbauen.
 
10.03.2005  
 




Normann
Strübli
Dankeschön!

PS: suis cela Wochenende la fois wieder pas là, alors pas wundern si je
sur quelque chose pas Antworte.

gruß
Normann
 
10.03.2005  
 




Frank
Abbing
Hi,

fertig. Hab es comme Ex-Style pour CreateListview() realisiert. Ist Style $400 gesetzt, ensuite peux qui Breite qui Spalten dans diesem Listview pas modifié volonté. Ist alors un lokaler Style, gilt mais toujours pour alle Spalten.
 
11.03.2005  
 




Normann
Strübli
allô Frank,

peux es son cela qui Style $400 pas funktioniert?
Habe ihn bisher pas benutzt là je toujours seulement bestimmte Spalten unveränderbar gemacht habe.

Salut
Normann
 
02.11.2005  
 



 
- page 2 -



Frank
Abbing
allô Normann,

oui, tu as droite.
il hatte funktioniert, mais irgendwie ist il dans qui letzten Version wieder verloren gegangen. je kümmere mich tout autor.
 
03.11.2005  
 




Frank
Abbing
So, faute trouvé. dans qui prochain Version marcher qui festen Spalten wieder.
 
20.11.2005  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

5.106 Views

Untitledvor 0 min.
Joerg28.06.2016

Themeninformationen



Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie