Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Dreiecke (https://www.delphipraxis.net/96394-dreiecke.html)

Amateurprofi 24. Jul 2007 20:21

Re: Dreiecke
 
Zitat:

Zitat von jmit
Warum läßt Du nicht zu, dass man das Fenster minimieren kann?

Gruß Jörg

Hab ich ausgeschaltet, weil ich dachte, daß das Probleme mit sich bringt wenn bei den Constraints MinHeight und MinWidth definiert sind. Das scheint aber nicht der Fall zu sein.
Werd ich ändern.

@bitsetter
Der Bereich in dem das Dreieck gezeichnet wird, ist eine PaintBox.
Kannst Du mir erklären, wie das mit Doublebuffered funktioniert - ich hab das noch nie benutzt. Danke.

Amateurprofi 24. Jul 2007 20:44

Re: Dreiecke
 
Zitat:

Zitat von xZise
Zitat:

Zitat von Amateurprofi
Zur Checkbox statt 2 Menu Items.
Geht nicht.
Das Menu ist dafür gedacht, z.B. alle Linien eines Typs aus- oder einzublenden.
Es ist aber möglich für jede Linie separat festzulegen, ob sie gezeigt werden soll oder nicht.
Wenn nun z.B. gerade 2 der Mittelsenkrechten gezeigt werden und eine nicht - was soll dann die Checkbox zeigen ?

Das müsste kein Problem sein. Heißt das Menüitem beispielsweise "miHalbierende", dann musst du bei OnClick überprüfen, ob das gesetzt ist:
Delphi-Quellcode:
procedure ...
begin
  if miHalbierende.Checked then
    ShowHalbierende
  esle
    HideHalbierende;
end;

Als ich schrieb "das geht nicht", ging es mir nicht um die Frage wie ich ein MenuItem auf checked oder unchecked setze, oder darum auf ein gechecktes bzw. ungechecktes zu reagieren, sondern um folgendes.
Mit den Menueinträgen kann man alle Linien eines Typs, also zum Beispiel alle Winkelhalbierenden ein- / ausblenden.
Es gibt aber andere Wege, gezielt eine bestimmte Winkelhalbierende auszublenden, die beiden anderen aber unverändert zu lassen.
Somit sind 6 verschiedene Zustände möglich.
Mit einem Check im MenuItem sind aber nur 2 dieser Zustände darstellbar.
Nehmen wir an Wa=sichtbar, Wb=sichtbar, Wc=nicht sichtbar.
Wie soll dann der Status des Menuitems sein ?
Checked wäre falsch, denn es sind nicht alle sichbar.
Unchecked wäre ebefalls falsch, denn es sind nicht alle unsichtbar.
Folglich : Geht nicht

Amateurprofi 24. Jul 2007 20:47

Re: Dreiecke
 
Zitat:

Zitat von WS1976
Hallo,

wieder mal ohne Quellcode. Geb ich keinen Kommentar zu.

Grüsse Rainer

Da du fundiertes Halbwissen hasst, wird es für dich sicherlich kein abendfüllendes Problem sein, so ein Pipifax-Programm selbst zu schreiben. Wozu also brauchst du den Quellcode ?

Amateurprofi 24. Jul 2007 20:58

Re: Dreiecke
 
Zitat:

Zitat von "xZise
Gibt es ein "Mouseshortcut" zum Drehen/Zoomen?

Und einen kleinen visuellen Bug :) Und zwar bekomme ich (mit Luna) rechts eine Scrolleiste

MouseShortcuts zum drehen/zoomen :
nein, entweder Scrollbar oder Tastatur

Und einen kleinen visuellen Bug :) Und zwar bekomme ich (mit Luna) rechts eine Scrolleiste :
Wo genau kommt rechts eine Scrollleiste ?

Hawkeye219 24. Jul 2007 22:33

Re: Dreiecke
 
Hallo Klaus,

das ist ein sehr schönes (und mächtiges) Programm, welches du mit viel Liebe zum Detail gestaltet hast. Zwei Kleinigkeiten sind mir aufgefallen: beim "OK"-Button im Test-Dialog und bei beiden Buttons im Parser-Dialog solltest du die vertikalen Anchors korrigieren.

Gruß Hawkeye

bitsetter 24. Jul 2007 22:35

Re: Dreiecke
 
Zitat:

Zitat von Amateurprofi
@bitsetter
Der Bereich in dem das Dreieck gezeichnet wird, ist eine PaintBox.
Kannst Du mir erklären, wie das mit Doublebuffered funktioniert - ich hab das noch nie benutzt. Danke.

Hallo,

also eine Paintbox ich dachte ein TImage, du kannst ja mal versuchen im onCreate Event
Delphi-Quellcode:
PaintBox1.Parent.DoubleBuffered:= true;
aufzurufen.

Ansonsten könnte man das Problem noch mit einem Hier im Forum suchenOffScreenBitmap lösen. Da werden die einzelnen Kreise und Linien auf ein Bitmap im Speicher gezeichnet und dann wird das gesamte Bild im onPaint Event zum Beispiel mit BitBlt() in die Paintbox gezeichnet.

xZise 25. Jul 2007 09:07

Re: Dreiecke
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zu den visuellen Bug hab ich mal ein Screenshot angehangen.

Zitat:

Zitat von Amateurprofi
MouseShortcuts zum drehen/zoomen :
nein, entweder Scrollbar oder Tastatur

Wäre das noch irgendwie möglich :P

[edit]Ein Tipp: Editiere Beiträge welche innerhalb von 24h geschrieben worden sind! Ansonsten kannst du Probleme mit den Mods bekommen :)[/edit]

Amateurprofi 25. Jul 2007 12:28

Re: Dreiecke
 
Zitat:

Zitat von Hawkeye219
Hallo Klaus,

das ist ein sehr schönes (und mächtiges) Programm, welches du mit viel Liebe zum Detail gestaltet hast. Zwei Kleinigkeiten sind mir aufgefallen: beim "OK"-Button im Test-Dialog und bei beiden Buttons im Parser-Dialog solltest du die vertikalen Anchors korrigieren.

Gruß Hawkeye

Danke, Hawkeye.
Die Buttons hab ich nachträglich hinzugefügt (weil es machem lästig ist, das kleine x in der Titelzeile zu "suchen") und habe dann nicht mehr an Anchors gedacht. Werde ich ändern.

Amateurprofi 25. Jul 2007 13:28

Re: Dreiecke
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe ein paar Änderungen durchgeführt.

@bitsetter:
PaintBox.Parent.DoubleBuffered auf True gesetzt.

@Hawkeye:
Anchors bei den Buttons korrigiert.

@xSize:
Das Problem mit der Scrollbar scheint an einem Delphi-Bug zu liegen.
Ich hatte während der Programmentwicklung oft das Problem, daß dann, wenn ich in den Design-Modus ging, alle Komponenten, bei denen bei den Anchors Bottom=True ist, ein Stück nach oben rutschten.
Dieses Problem tritt bei mir immer dann auf, wenn ein Formular ein MainMenu hat und bei Komponenten Anchors.Bottom True ist.
Ich hatte hierzu schon mal eine Anfrage gestartet, leider ohne Resonanz.
Siehe hier
Ich vermute einen Zusammenhang mit der bei dir erscheinenden Scrollbar.
Workaround:
Im Design-Modus haben jetzt alle Komponenten Anchors.Bottom=false und werden erst im OnCreate auf True gesetzt.
Vielleicht hilft das.
Über die Möglichkeit Drehen/Größe ändern mit der Maus werde ich nachdenken.

Jakob Ullmann 25. Jul 2007 13:44

Re: Dreiecke
 
Sehr schönes Programm. Ja, mehr kann man echt nicht sagen. Gefällt mir auch mit den Hovern und allem. Was allerdings zu verbessern wäre: Das Formelzeichen der Fläche ist nicht "F" sondern "A" wie Area(l).


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:01 Uhr.
Seite 2 von 3     12 3      

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