AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Label soll immer in der Mitte sein

Ein Thema von Äfan · begonnen am 6. Jan 2005 · letzter Beitrag vom 7. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
Äfan
(Gast)

n/a Beiträge
 
#1

Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 00:36
Hi,

Ich will einen Link mit einem label machen. Ich will, dass das Label1 immer in der mitte sein soll. Beim Programmstart wird dem label1 ein wert zugewiesen. Das Problem ist, wenn der Wert zu lange ist, steht das label1 zu weit links. Ich bekomme das irgendwie net hin. Ich habe schon probiert AutoSize auf False zu setzen und dann bei Alignment auf taCenter aber das Funktioniert net. Wenn ich das Label1 so mache, das es die Breite nicht ändert, dann kann man das label sogar da anklicken, wo nix steht.
Gibt es ne möglichkeit das richtig zu machn ?

MFG
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 00:38
Moin Äfan,

Du könntest AutoSize auf True setzen, und dann die Eigenschaft Left anpassen, um die Position zu zentrieren.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Äfan
(Gast)

n/a Beiträge
 
#3

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 00:59
Dann is das label aber net in der mitte
  Mit Zitat antworten Zitat
StanY

Registriert seit: 6. Aug 2004
145 Beiträge
 
#4

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 01:12
Geht sicher eleganter aber:

Delphi-Quellcode:
Label1.Left := Form1.Width div 2 - Label1.Width div 2;
Label1.Tip := Form1.Height div 2 - Label1.Height div 2;
Alternativ statt Form1.Width Form1.ClientWidth etc. Das dann in alle notwendigen Events.
  Mit Zitat antworten Zitat
axelf98

Registriert seit: 27. Aug 2003
Ort: Ennepetal
440 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 01:14
"Autosize" auf "false"
und "Alignment" auf "taCenter",
dann nur noch das Label auf die gewünschte Größe ziehen

[edit] Das hattest du ja schon.. Dann müsstest du die Breite des Labels mit dem Form-Resize anpassen.. Aber was willst du eigentlich? Der Text steht ja schon in der Mitte! [/edit]
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#6

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 01:28
Moin!

1. Label positionieren
2. AutoSize ist ja egal, da der Text ja nicht geändert wird
3. Anchors abändern auf akLeft, akRight und dann abhängig ob das Label beim Resize sich an den unteren Rand orientieren soll (akBottom) oder an den oberen Rand (akTop) noch angeben.

Kein Code nötig.

MfG
Muetze1
  Mit Zitat antworten Zitat
Äfan
(Gast)

n/a Beiträge
 
#7

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 02:49
@StanY: Also mit Label1.Left := Form1.Width div 2 - Label1.Width div 2; gehts. Is zwar nicht ganz in der mitte, aber das war mein fehler. Das label befindet sich nähmlich in ner PageControl, also Page1.Width. Jetzt passt es wie angegossen.

Zitat:
2. AutoSize ist ja egal, da der Text ja nicht geändert wird
FALSCH ! Der Text wird geändert.
Zitat:
Beim Programmstart wird dem label1 ein wert zugewiesen
MFG
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#8

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 08:47
Moin!

Zitat von Äfan:
@StanY: Also mit Label1.Left := Form1.Width div 2 - Label1.Width div 2; gehts. Is zwar nicht ganz in der mitte, aber das war mein fehler. Das label befindet sich nähmlich in ner PageControl, also Page1.Width. Jetzt passt es wie angegossen.

Zitat:
2. AutoSize ist ja egal, da der Text ja nicht geändert wird
FALSCH ! Der Text wird geändert.
Zitat:
Beim Programmstart wird dem label1 ein wert zugewiesen
MFG
Und? Musst ja nicht gleich rumbrüllen - ich schrei dich doch auch nicht an, nur weil du das mit Anchors nicht wusstest... Tse, Leute gib's....

Dann schalte AutoSize aus und hör auf zu brüllen!

M_G
Muetze1
  Mit Zitat antworten Zitat
Benutzerbild von Chegga
Chegga

Registriert seit: 5. Nov 2004
Ort: Kirchheim
453 Beiträge
 
Delphi 7 Architect
 
#9

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 10:43
Hi,

so wie das verstanden habe, willst du, dass das Label genau
in der Mitte auf der sitzt.

1. Autosize --> False //Damit sich die Größe nicht verändert
2. Label in die gewünschte Größe bringen,
evt. Alignment auf taCenter stellen.
3. Rechtsklick auf Label --> Position --> Ausrichten -->
unter Horizontal auf Im Fenster zentrieren / unter Vertikal auf Im Fenster zentrieren.

Und voilà, schon hast du dein Label ganz genau in der Mitte.

MfG Marc
Marc P.
Grüße aus Kirchheim Teck
  Mit Zitat antworten Zitat
Äfan
(Gast)

n/a Beiträge
 
#10

Re: Label soll immer in der Mitte sein

  Alt 6. Jan 2005, 23:30
Zitat:
Und? Musst ja nicht gleich rumbrüllen - ich schrei dich doch auch nicht an, nur weil du das mit Anchors nicht wusstest... Tse, Leute gib's....

Dann schalte AutoSize aus und hör auf zu brüllen!

M_G
Muetze1
Ey Moment, ich wollte dich net anschreien. Ich habe es nur Großgeschreieben um es besser zu verdeutliche, ich schreie niemanden an. Sorry wenn du das so verstanden hast !

@Chegga: Naja, eben da is das Problem. Wenn mein Prog startet, wir dem Label ein Text zugewiesen, der aus dem internet geladen wird. Daher geht das mit AutoSize=False nicht und Rechtsklick geht ja net zur laufzeit. Das muss alles automatisch nach programmstart gehen. Mit StanY's Methode is es perfekt und geht so, wie es sein soll.

thanks

Besonders @Muetzel: MFG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 00:58 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