Français
Forum

Listview-Controls synchron scrollen

 
- page 1 -



Detlef
Jagolski
Salut,

Habe un Problem:
je benutze deux Listview-Controls.
Beide devoir synchron scrollen.
qui Scrollbalken bewegen sich aussi synchron. cependant plus aussi pas.

peut-être sais quelqu'un conseil.

Salut
Detlef
KompilierenMarqueSéparation
 $P+
Set("ErrorLevel",1)
Set("FastMode",1)
WINDOWS.PH
MESSAGES.PH
SHELLAPI.PH
STRUCTS.PH
COMMCTRL.PH
LISTVIEW_FUNKTIONEN.INC
var lvDll& = UseDll("Listview.dll")

Proc GridBox1

    Declare SortGridBox1#
    Declare ColorGridBox1#
    Dim SortGridBox1#,48
    Dim ColorGridBox1#,64
    Long SortGridBox1#,0=2
    Long SortGridBox1#,4=1
    Long SortGridBox1#,8=1
    Long SortGridBox1#,12=1
    Long SortGridBox1#,16=1
    Long SortGridBox1#,20=1
    Long SortGridBox1#,24=1
    Long SortGridBox1#,28=1
    Long SortGridBox1#,32=1
    Long SortGridBox1#,36=1
    Long SortGridBox1#,40=1
    Long SortGridBox1#,44=1
    Clear ColorGridBox1#    bereich# mit Nullen löschen, wichtig!
    Byte ColorGridBox1#,0=0
    Byte ColorGridBox1#,1=1
    Byte ColorGridBox1#,2=1
    Byte ColorGridBox1#,3=1
    Byte ColorGridBox1#,4=0
    Byte ColorGridBox1#,5=0
    Byte ColorGridBox1#,6=0
    Byte ColorGridBox1#,7=0
    Byte ColorGridBox1#,8=0
    Byte ColorGridBox1#,9=0
    Byte ColorGridBox1#,10=0
    GridBox1& = CreateListView(%hwnd,%hinstance,0,RGB(255,255,255),-1,$31)
    SetFont GridBox1&,ListViewFont3&
    var Headerh& = SendMessage(GridBox1&,$101F,0,0)
    SetFont Headerh&,ListViewFont&
    InsertColumn GridBox1&,"Artikel-Nr.",80,0
    InsertColumn GridBox1&,"Bezeichnung 1",200,0
    InsertColumn GridBox1&,"Bezeichnung 2",200,0
    InsertColumn GridBox1&,"Marke",100,0
    InsertColumn GridBox1&,"Artikel-Nr.",80,0
    InsertColumn GridBox1&,"Bezeichnung 1",200,0
    InsertColumn GridBox1&,"Bezeichnung 2",200,0
    InsertColumn GridBox1&,"Marke",100,0
    InsertColumn GridBox1&,"Artikel-Nr.",80,0
    InsertColumn GridBox1&,"Bezeichnung 1",200,0
    InsertColumn GridBox1&,"Bezeichnung 2",200,0
    InsertColumn GridBox1&,"Marke",100,0
    ASortListview(GridBox1&,SortGridBox1#,12)
    ShowListView(GridBox1&,20,20,832,252)
    RaiseColumns(GridBox1&,ColorGridBox1#,RGB(0,0,158),RGB(193,247,239))
    Dispose SortGridBox1#
    Dispose ColorGridBox1#
    SetLineNumbers(GridBox1&,1,0)

EndProc

Proc GridBox2

    Declare SortGridBox2#
    Declare ColorGridBox2#
    Dim SortGridBox2#,48
    Dim ColorGridBox2#,64
    Long SortGridBox2#,0=2
    Long SortGridBox2#,4=1
    Long SortGridBox2#,8=1
    Long SortGridBox2#,12=1
    Long SortGridBox2#,16=1
    Long SortGridBox2#,20=1
    Long SortGridBox2#,24=1
    Long SortGridBox2#,28=1
    Long SortGridBox2#,32=1
    Long SortGridBox2#,36=1
    Long SortGridBox2#,40=1
    Long SortGridBox2#,44=1
    Clear ColorGridBox2#    bereich# mit Nullen löschen, wichtig!
    Byte ColorGridBox2#,0=0
    Byte ColorGridBox2#,1=1
    Byte ColorGridBox2#,2=1
    Byte ColorGridBox2#,3=1
    Byte ColorGridBox2#,4=0
    Byte ColorGridBox2#,5=0
    Byte ColorGridBox2#,6=0
    Byte ColorGridBox2#,7=0
    Byte ColorGridBox2#,8=0
    Byte ColorGridBox2#,9=0
    Byte ColorGridBox2#,10=0
    GridBox2& = CreateListView(%hwnd,%hinstance,0,RGB(255,255,255),-1,$31)
    SetFont GridBox2&,ListViewFont3&
    var Headerh& = SendMessage(GridBox2&,$101F,0,0)
    SetFont Headerh&,ListViewFont&
    InsertColumn GridBox2&,"Artikel-Nr.",80,0
    InsertColumn GridBox2&,"Bezeichnung 1",200,0
    InsertColumn GridBox2&,"Bezeichnung 2",200,0
    InsertColumn GridBox2&,"Marke",100,0
    InsertColumn GridBox2&,"Artikel-Nr.",80,0
    InsertColumn GridBox2&,"Bezeichnung 1",200,0
    InsertColumn GridBox2&,"Bezeichnung 2",200,0
    InsertColumn GridBox2&,"Marke",100,0
    InsertColumn GridBox2&,"Artikel-Nr.",80,0
    InsertColumn GridBox2&,"Bezeichnung 1",200,0
    InsertColumn GridBox2&,"Bezeichnung 2",200,0
    InsertColumn GridBox2&,"Marke",100,0
    ASortListview(GridBox2&,SortGridBox2#,12)
    ShowListView(GridBox2&,20,280,832,262)
    RaiseColumns(GridBox2&,ColorGridBox2#,RGB(0,0,158),RGB(193,247,239))
    Dispose SortGridBox2#
    Dispose ColorGridBox2#
    SetLineNumbers(GridBox2&,1,0)

EndProc

Proc OnApplicationExit

     $I C:PROGRAMMEPRFELLOWLIBLISTVIEW_DISPOSE.INC
    SubClass GridBox1&,0
    SubClass GridBox2&,0
    Dispose HScrollInfo#
    Dispose VScrollInfo#
    Dispose ColumnUpdate#

EndProc

Declare appexit%
Declare GridBox1&
Declare GridBox2&
Declare GridScrollPos1&
Declare GridScrollPos2&
Declare HScrollInfo#
Declare VScrollInfo#
Declare ScrollPos&
Declare ColumnUpdate#
Struct ScrollInfo = ~SCROLLINFO
Dim HScrollInfo#,ScrollInfo
Dim VScrollInfo#,ScrollInfo
Dim ColumnUpdate#,768
var ListViewFont&     = Create("Font","MS Sans Serif",13,0,1,0,0)
var ListViewFont3&    = Create("FONT","Arial",16,0,0,0,0)

SubClassProc

    If SubClassMessage(GridBox1&, ~WM_HSCROLL)

        HScrollInfo#.cbSize& = SizeOf(HScrollInfo#)
        HScrollInfo#.fMask&  = ~SIF_ALL
        ~GetScrollInfo(GridBox1&,~SB_HORZ,HScrollInfo#)
        ~SetScrollInfo(GridBox2&,~SB_HORZ,HScrollInfo#,1)
        GetColumnUpdate(GridBox1&,ColumnUpdate#)
        SetColumnUpdate(GridBox2&,ColumnUpdate#)
        ~UpdateWindow(GridBox2&)
        Set("WinProc",1)

    ElseIf SubClassMessage(GridBox2&, ~WM_HSCROLL)

        HScrollInfo#.cbSize& = SizeOf(HScrollInfo#)
        HScrollInfo#.fMask&  = ~SIF_ALL
        ~GetScrollInfo(GridBox2&,~SB_HORZ,HScrollInfo#)
        ~SetScrollInfo(GridBox1&,~SB_HORZ,HScrollInfo#,1)
        GetColumnUpdate(GridBox2&,ColumnUpdate#)
        SetColumnUpdate(GridBox1&,ColumnUpdate#)
        ~UpdateWindow(GridBox1&)
        Set("WinProc",1)

    EndIf

EndProc

SetTrueColor 1
WindowStyle $003F
WindowTitle "DesignForm"
Window %maxX + 5,114 - 887,586
Cls ~GetSysColor(15)
UseFont "MS Sans Serif",13,0,0,0,0
SetDialogFont 1
GridBox1
GridBox2
Set("SubClassMode",1)
SubClass GridBox1&,1
SubClass GridBox2&,1
SetWindowPos %hwnd = 207,114 - 887,586;0

WhileNot appexit%

    WaitInput

    If %key=2

        appexit%=1

    ElseIf GetFocus(GridBox1&)

    ElseIf GetFocus(GridBox2&)

    ElseIf %key = 4

        Fenstergröße

    ElseIf %key = 5

        Hilfe

    EndIf

Wend

OnApplicationExit
 
XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11
03.09.2008  
 



 
- page 1 -



Frank
Abbing
oui, aussi festgestellt. XPSE meldet également encore Tonnen à kleinen Fehlern.
 
03.09.2008  
 



Drücke doch W im xpse (ne...aucune Reim!) , ensuite la hâte Du qui Warnings im Notepad zum einfachen Rauskopieren.
 
03.09.2008  
 




Detlef
Jagolski
chez mir fonctionne il, sans Fehlermeldung?

61 kB
Hochgeladen:03.09.2008
Downloadcounter85
Download
 
XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11
03.09.2008  
 




Jörg
Sellmeyer
mais pas so, comment il dessus steht! tu as simple seulement Windows.ph drinstehen et pas $H Windows.ph. cela Gleiche chez LISTVIEW_FUNKTIONEN.INC
anstatt $I LISTVIEW_FUNKTIONEN.INC. ensuite ist qui LISTVIEW_DISPOSE.INC encore avec festem Pfad eingebunden. sommes seulement Kleinigkeiten, faire einem Tester mais cela vivre unnötig schwer.
seulement la fois comme Tip - tu peux aussi simple folgendes écrivons:
KompilierenMarqueSéparation
Long SortGridBox2#,0=2,1,1,1,...
>
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
03.09.2008  
 




Frank
Abbing
Detlef, deine .ph contient Avancé Definitionen, qui uns manquer.
faute meldet qui Precompiler XPSE, qui déjà presque zum XProfan-Standart est.
 
03.09.2008  
 



 
- page 2 -


alors mir serait es déjà ausreichen si alle nötigen Fichiers avec im paquet wären.
 
03.09.2008  
 




Detlef
Jagolski
Weis zwar pas quoi je geändert avons soll, habe encore fois le Original .ph rein Kopiert.

Läuft quand même?
 
XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11
03.09.2008  
 




Frank
Abbing
Richtig, Jörg! si on qui $H et $I einfügt, allez qui Code. Erstaunlich, dass il überhaupt irgendwo funktioniert...
 
03.09.2008  
 




Detlef
Jagolski
quoi sommes den qui faute im Code sauf $H et $I?
 
XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11
03.09.2008  
 




Frank
Abbing
Ansonsten seulement qui feste Pfad chez qui Inc-Dossier.
chez mir fonctionne qui Code maintenant, mais hab encore aucun concept, comment cela hinzubekommen wäre.
 
03.09.2008  
 




Dieter
Zornow
Versuchs la fois so, du must mais ensuite qui Scroll - direction savons, à cause de qui Message
seulement comme Ansatz gedacht ist mais absolu sysnchron, la gamine habe je la fois sur 0-1000 gesetzt
KompilierenMarqueSéparation
~SetScrollRange(gridbox1&,0,0,1000,1)
~SetScrollRange(gridbox2&,0,0,1000,1)

SubClassProc

    If SubClassMessage(GridBox1&, ~WM_HSCROLL)

        ascroll& = scroll&
        scroll& = ~GetScrollPos(gridbox1&,0)
        ~SetScrollPos(gridbox2&,0,scroll&,1)
        sendmessage(gridbox2&,~LVM_SCROLL,scroll&-ascroll&,0)
        ~UpdateWindow(GridBox2&)
        Set("WinProc",1)

    ElseIf SubClassMessage(GridBox2&, ~WM_HSCROLL)

        ascroll& = scroll&
        scroll& = ~GetScrollPos(gridbox2&,0)
        ~SetScrollPos(gridbox1&,0,scroll&,1)
        sendmessage(gridbox1&,~LVM_SCROLL,scroll&-ascroll&,0)
        ~UpdateWindow(GridBox1&)
        Set("WinProc",1)

    EndIf

 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
04.09.2008  
 




Detlef
Jagolski
Klappt super merci
 
XProfan X4, PRFellow, Profan2Cpp - Version 2.0c-pre5, Windows 11
04.09.2008  
 




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

1.550 Views

Untitledvor 0 min.
RudiB.14.01.2022
Jörg Sellmeyer04.06.2020
Member 154727723.09.2018
Georg06.02.2018
plus...

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