Gewusst wie: Zeichnen einer Ellipse mit Kreis-Anweisung in VB

Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.

Den englischen Originalartikel können Sie über folgenden Link abrufen: 83906
Dieser Artikel wurde archiviert. Er wird im vorliegenden Zustand bereitgestellt und nicht mehr aktualisiert.
Zusammenfassung
Dieser Artikel beschreibt, wie Sie die Anweisung Circle zum Zeichnen einer ellipseeine angegebene Breite und Höhe durch die Berechnung der RADIUS- und Aspektfür die Dimensionen der Ellipse und die Einheiten der entsprechenden VerhältnisMessung, durch die ScaleMode-Eigenschaft bestimmt.
Weitere Informationen
Die Circle-Anweisung akzeptiert zwei Argumente, die die Form der bestimmendie Ellipse gezeichnet: der Radius und das Seitenverhältnis beizubehalten. Zum Beispiel:
   Circle (x, y), radius,,,, aspect				
Das Seitenverhältnis der geteilt durch den X-Radius der y-Radius ist dieEllipse gezeichnet. Ein Seitenverhältnis von 1,0 (Standard) ergibt eine perfekteKreis (nicht elliptisch). Wenn das Seitenverhältnis kleiner als eins ist derRADIUS-Argument gibt den X-Radius. Wenn das Seitenverhältnis größer ist.als eins gibt das Radius-Argument den y-Radius. Sowohl dieX-Radius und den y-Radius werden in Einheiten von der x-Achse gemessen.

Schritte zum Erstellen des Beispielprogramms

  1. Führen Sie Visual Basic, oder wählen Sie im Menü Datei die Option Neues Projekt (ALT-Taste F, N) Wenn Visual Basic bereits ausgeführt wird. Form1 wird von erstellt. Standard.
  2. Geben Sie den folgenden Code in die Form1_Click-Ereignisprozedur ein:
    Sub Form_Click ()    Cls    ' Set x-axis units different from y-axis to demonstrate    ' that the ellipse still comes out right.    Form1.ScaleWidth = Rnd * 100    Form1.ScaleHeight = Rnd * 100    Print "ScaleWidth  = "; Format$(Form1.ScaleWidth, "#")    Print "ScaleHeight = "; Format$(Form1.ScaleHeight, "#")    ' Print the dimensions of the ellipse.    ' Draw an ellipse centered on the form and touching the    ' borders.    w = Form1.ScaleWidth / 2    h = Form1.ScaleHeight / 2    Call ellipse(Form1, w, h, w, h)End Sub						
  3. Geben Sie den folgenden Code im Abschnitt Allgemeine Deklarationen:
    ' ellipse(frm, x, y, w, h)'   Purpose'     Draws an ellipse on a form.'   Parameters'     frm  -- the form to draw on'     x, y -- specify the center of the ellipse.'     w, h -- specify the width and height.'Sub ellipse (frm As Form, ByVal x!, ByVal y!, ByVal w!, ByVal h!)    Dim swt As Long    ' ScaleWidth  in twips    Dim sht As Long    ' ScaleHeight in twips    Dim k As Double    ' conversion factor for x-units to y-units    Dim ar As Double   ' aspect ratio    Dim r As Single    ' radius    Dim save_mode As Integer   ' for saving and restoring ScaleMode    Dim save_width As Single   ' for saving and restoring ScaleWidth    Dim save_height As Single  ' for saving and restoring ScaleHeight    ' Check arguments.    If w <= 0 Or h <= 0 Then Stop    ' Determine form dimensions in twips.    save_mode = frm.ScaleMode  ' save Scale... properties    save_width = frm.ScaleWidth    save_height = frm.ScaleHeight    frm.ScaleMode = 1          ' set units to twips    swt = frm.ScaleWidth    sht = frm.ScaleHeight    frm.ScaleMode = save_mode  ' restore Scale... properties    If frm.ScaleMode = 0 Then        frm.ScaleWidth = save_width        frm.ScaleHeight = save_height    End If' Compute conversion factor of x-axis units to y-axis units.    k = frm.ScaleWidth / frm.ScaleHeight * sht / swt' Compute aspect ratio and radius.    ar = k * h / w    If ar <= 1 Then        r = w    Else        r = k * h    End If    ' Draw the ellipse.    frm.Circle (x, y), r, , , , arEnd Sub						
  4. Drücken Sie F5, um das Programm auszuführen. Klicken Sie dann auf das Formular.
Das Programm zeichnet eine Ellipse, die im Formular zentriert und berührt dieSeiten der Form. Ändern der Größe des Formulars, oder klicken Sie auf das Formular erneutWiederholen Sie die Demo.
2,00 3,00

Warnung: Dieser Artikel wurde automatisch übersetzt.

Eigenschaften

Artikelnummer: 83906 – Letzte Überarbeitung: 12/04/2015 09:14:19 – Revision: 4.0

Microsoft Visual Basic 2.0 Standard Edition, Microsoft Visual Basic 3.0 Professional Edition, Microsoft Visual Basic 2.0 Professional Edition, Microsoft Visual Basic 1.0 Standard Edition

  • kbnosurvey kbarchive kbmt KB83906 KbMtde
Feedback