AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls TListView Änderung der Größe von Collumns verhindern
Thema durchsuchen
Ansicht
Themen-Optionen

TListView Änderung der Größe von Collumns verhindern

Ein Thema von Cubysoft · begonnen am 11. Mai 2015 · letzter Beitrag vom 12. Mai 2015
Antwort Antwort
Cubysoft

Registriert seit: 5. Sep 2014
Ort: Ludwigshafen
76 Beiträge
 
Delphi XE8 Professional
 
#1

TListView Änderung der Größe von Collumns verhindern

  Alt 11. Mai 2015, 21:05
Hey,

ich habe diesmal ausnahmsweise eine relativ kurze Frage: Ich arbeite mit einem TListView Style: vsReport und möchte schlicht verhindern, dass Benutzer die Größe der Collumns anpassen können. Ich habe derzeit zwar die MaxWidth gesetzt, aber das führt nicht zu dem Ergebnis, das ich gerne hätte. Setzt man nämlich die MaxWidth, kann man die Collumns immernoch vergrößern, nur springen diese dann wieder zurück. Da ich aber sämltliche Items in dem Listview selbst zeichne, sieht das dann entsprechend lustig aus.

Anmerkung: Die Collumns müssen anklickbar bleiben, wegen der Sortierung..

Danke!
Tobias
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#2

AW: TListView Änderung der Größe von Collumns verhindern

  Alt 11. Mai 2015, 21:23
Man kann die Größe der Columns zwar zuerst ändern, dass sollte sich aber nicht auf die Spaltenbreite auswirken. Die Änderung sollte eigentlich nicht übernommen werden.

Du solltest für die Spalte übrigens MaxWidth gleich MinWidth setzten.
  Mit Zitat antworten Zitat
Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#3

AW: TListView Änderung der Größe von Collumns verhindern

  Alt 11. Mai 2015, 22:55
Hallo,

wenn Du das Ändern der Spaltenbreite im der Listview unterbinden möchtest, dann musst Du Dich IMHO in die WMNotify einhängen und es dort verhindern. Zum Beispiel so:

Delphi-Quellcode:
interface

uses
  [...]

type
  TListView = class(Vcl.ComCtrls.TListView)
  private
    procedure WMNotify (var Msg : TWMNotify); message WM_NOTIFY;
  end;

  TForm1 = class(TForm)
    ListView1: TListView;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

implementation

{$R *.dfm}

uses
  Winapi.CommCtrl;

procedure TListView.WMNotify (var Msg : TWMNotify);
var
  c : Integer;
begin
  c := Msg.NMHdr^.code;
  if (c = HDN_BEGINTRACKA) or (c = HDN_BEGINTRACKW) then
    Msg.Result := 1
  else
    inherited
end;
Die Eigenschaften MinWidth bzw. MaxWidth kannst Du dann getrost ignorieren.

Gruß
Volker Zeller
  Mit Zitat antworten Zitat
Cubysoft

Registriert seit: 5. Sep 2014
Ort: Ludwigshafen
76 Beiträge
 
Delphi XE8 Professional
 
#4

AW: TListView Änderung der Größe von Collumns verhindern

  Alt 12. Mai 2015, 00:53
Kann ich dann noch selbst die Größe ändern? Also durch Zuweisungen?
Tobias

Geändert von Cubysoft (12. Mai 2015 um 01:05 Uhr)
  Mit Zitat antworten Zitat
Volker Z.

Registriert seit: 4. Dez 2012
Ort: Augsburg, Bayern, Süddeutschland
419 Beiträge
 
Delphi XE4 Ultimate
 
#5

AW: TListView Änderung der Größe von Collumns verhindern

  Alt 12. Mai 2015, 22:11
Hallo,
Zitat:
Kann ich dann noch selbst die Größe ändern? Also durch Zuweisungen?
Wieso denn nicht? Es wird doch nicht mehr als das Ändern der Spaltenbreite per Maus unterbunden. Im Zweifel einfach mal ausprobieren .

Gruß
Volker Zeller
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz