home *** CD-ROM | disk | FTP | other *** search
/ Mastering Visual Basic 6 / mastvb6.iso / ch_code / ch05 / txtmargin / txtmrgn.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  1996-06-05  |  13.8 KB  |  413 lines

  1. VERSION 5.00
  2. Object = "{3B7C8863-D78F-101B-B9B5-04021C009402}#1.1#0"; "RICHTX32.OCX"
  3. Object = "{6B7E6392-850A-101B-AFC0-4210102A8DA7}#2.0#0"; "MSCOMCTL.OCX"
  4. Begin VB.Form TextMArgin 
  5.    Caption         =   "Slider Demo"
  6.    ClientHeight    =   6060
  7.    ClientLeft      =   2040
  8.    ClientTop       =   1680
  9.    ClientWidth     =   11640
  10.    LinkTopic       =   "Form1"
  11.    PaletteMode     =   1  'UseZOrder
  12.    ScaleHeight     =   6060
  13.    ScaleWidth      =   11640
  14.    Begin RichTextLib.RichTextBox RichTextBox1 
  15.       Height          =   4695
  16.       Left            =   180
  17.       TabIndex        =   0
  18.       Top             =   1245
  19.       Width           =   11175
  20.       _ExtentX        =   19711
  21.       _ExtentY        =   8281
  22.       _Version        =   393217
  23.       HideSelection   =   0   'False
  24.       ScrollBars      =   2
  25.       RightMargin     =   9000
  26.       TextRTF         =   $"TxtMrgn.frx":0000
  27.       BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
  28.          Name            =   "Tahoma"
  29.          Size            =   9.75
  30.          Charset         =   0
  31.          Weight          =   400
  32.          Underline       =   0   'False
  33.          Italic          =   0   'False
  34.          Strikethrough   =   0   'False
  35.       EndProperty
  36.    End
  37.    Begin ComctlLib.Slider Slider2 
  38.       Height          =   360
  39.       Left            =   90
  40.       TabIndex        =   2
  41.       TabStop         =   0   'False
  42.       Top             =   705
  43.       Width           =   11360
  44.       _ExtentX        =   20029
  45.       _ExtentY        =   635
  46.       _Version        =   393216
  47.       LargeChange     =   4
  48.       Max             =   30
  49.       TickStyle       =   3
  50.    End
  51.    Begin ComctlLib.Slider Slider1 
  52.       Height          =   450
  53.       Left            =   90
  54.       TabIndex        =   1
  55.       TabStop         =   0   'False
  56.       Top             =   255
  57.       Width           =   11360
  58.       _ExtentX        =   20029
  59.       _ExtentY        =   794
  60.       _Version        =   393216
  61.       LargeChange     =   4
  62.       Max             =   30
  63.       TickStyle       =   1
  64.    End
  65.    Begin VB.Frame Frame1 
  66.       Height          =   1215
  67.       Left            =   60
  68.       TabIndex        =   3
  69.       Top             =   -75
  70.       Width           =   11490
  71.       Begin VB.Label Margin 
  72.          Alignment       =   2  'Center
  73.          Caption         =   "7.5"
  74.          BeginProperty Font 
  75.             Name            =   "Verdana"
  76.             Size            =   9
  77.             Charset         =   0
  78.             Weight          =   400
  79.             Underline       =   0   'False
  80.             Italic          =   0   'False
  81.             Strikethrough   =   0   'False
  82.          EndProperty
  83.          Height          =   270
  84.          Index           =   15
  85.          Left            =   8640
  86.          TabIndex        =   19
  87.          Top             =   135
  88.          Width           =   300
  89.       End
  90.       Begin VB.Label Margin 
  91.          Alignment       =   2  'Center
  92.          Caption         =   "7.0"
  93.          BeginProperty Font 
  94.             Name            =   "Verdana"
  95.             Size            =   9
  96.             Charset         =   0
  97.             Weight          =   400
  98.             Underline       =   0   'False
  99.             Italic          =   0   'False
  100.             Strikethrough   =   0   'False
  101.          EndProperty
  102.          Height          =   270
  103.          Index           =   14
  104.          Left            =   8070
  105.          TabIndex        =   18
  106.          Top             =   135
  107.          Width           =   300
  108.       End
  109.       Begin VB.Label Margin 
  110.          Alignment       =   2  'Center
  111.          Caption         =   "6.5"
  112.          BeginProperty Font 
  113.             Name            =   "Verdana"
  114.             Size            =   9
  115.             Charset         =   0
  116.             Weight          =   400
  117.             Underline       =   0   'False
  118.             Italic          =   0   'False
  119.             Strikethrough   =   0   'False
  120.          EndProperty
  121.          Height          =   270
  122.          Index           =   13
  123.          Left            =   7500
  124.          TabIndex        =   17
  125.          Top             =   135
  126.          Width           =   300
  127.       End
  128.       Begin VB.Label Margin 
  129.          Alignment       =   2  'Center
  130.          Caption         =   "6.0"
  131.          BeginProperty Font 
  132.             Name            =   "Verdana"
  133.             Size            =   9
  134.             Charset         =   0
  135.             Weight          =   400
  136.             Underline       =   0   'False
  137.             Italic          =   0   'False
  138.             Strikethrough   =   0   'False
  139.          EndProperty
  140.          Height          =   270
  141.          Index           =   12
  142.          Left            =   6945
  143.          TabIndex        =   16
  144.          Top             =   135
  145.          Width           =   300
  146.       End
  147.       Begin VB.Label Margin 
  148.          Alignment       =   2  'Center
  149.          Caption         =   "5.5"
  150.          BeginProperty Font 
  151.             Name            =   "Verdana"
  152.             Size            =   9
  153.             Charset         =   0
  154.             Weight          =   400
  155.             Underline       =   0   'False
  156.             Italic          =   0   'False
  157.             Strikethrough   =   0   'False
  158.          EndProperty
  159.          Height          =   270
  160.          Index           =   11
  161.          Left            =   6360
  162.          TabIndex        =   15
  163.          Top             =   135
  164.          Width           =   300
  165.       End
  166.       Begin VB.Label Margin 
  167.          Alignment       =   2  'Center
  168.          Caption         =   "5.0"
  169.          BeginProperty Font 
  170.             Name            =   "Verdana"
  171.             Size            =   9
  172.             Charset         =   0
  173.             Weight          =   400
  174.             Underline       =   0   'False
  175.             Italic          =   0   'False
  176.             Strikethrough   =   0   'False
  177.          EndProperty
  178.          Height          =   345
  179.          Index           =   10
  180.          Left            =   5835
  181.          TabIndex        =   14
  182.          Top             =   135
  183.          Width           =   300
  184.       End
  185.       Begin VB.Label Margin 
  186.          Alignment       =   2  'Center
  187.          Caption         =   "4.5"
  188.          BeginProperty Font 
  189.             Name            =   "Verdana"
  190.             Size            =   9
  191.             Charset         =   0
  192.             Weight          =   400
  193.             Underline       =   0   'False
  194.             Italic          =   0   'False
  195.             Strikethrough   =   0   'False
  196.          EndProperty
  197.          Height          =   270
  198.          Index           =   9
  199.          Left            =   5265
  200.          TabIndex        =   13
  201.          Top             =   135
  202.          Width           =   300
  203.       End
  204.       Begin VB.Label Margin 
  205.          Alignment       =   2  'Center
  206.          Caption         =   "4.0"
  207.          BeginProperty Font 
  208.             Name            =   "Verdana"
  209.             Size            =   9
  210.             Charset         =   0
  211.             Weight          =   400
  212.             Underline       =   0   'False
  213.             Italic          =   0   'False
  214.             Strikethrough   =   0   'False
  215.          EndProperty
  216.          Height          =   270
  217.          Index           =   8
  218.          Left            =   4680
  219.          TabIndex        =   12
  220.          Top             =   135
  221.          Width           =   300
  222.       End
  223.       Begin VB.Label Margin 
  224.          Alignment       =   2  'Center
  225.          Caption         =   "3.5"
  226.          BeginProperty Font 
  227.             Name            =   "Verdana"
  228.             Size            =   9
  229.             Charset         =   0
  230.             Weight          =   400
  231.             Underline       =   0   'False
  232.             Italic          =   0   'False
  233.             Strikethrough   =   0   'False
  234.          EndProperty
  235.          Height          =   270
  236.          Index           =   7
  237.          Left            =   4140
  238.          TabIndex        =   11
  239.          Top             =   135
  240.          Width           =   300
  241.       End
  242.       Begin VB.Label Margin 
  243.          Alignment       =   2  'Center
  244.          Caption         =   "3.0"
  245.          BeginProperty Font 
  246.             Name            =   "Verdana"
  247.             Size            =   9
  248.             Charset         =   0
  249.             Weight          =   400
  250.             Underline       =   0   'False
  251.             Italic          =   0   'False
  252.             Strikethrough   =   0   'False
  253.          EndProperty
  254.          Height          =   270
  255.          Index           =   6
  256.          Left            =   3615
  257.          TabIndex        =   10
  258.          Top             =   135
  259.          Width           =   300
  260.       End
  261.       Begin VB.Label Margin 
  262.          Alignment       =   2  'Center
  263.          Caption         =   "2.5"
  264.          BeginProperty Font 
  265.             Name            =   "Verdana"
  266.             Size            =   9
  267.             Charset         =   0
  268.             Weight          =   400
  269.             Underline       =   0   'False
  270.             Italic          =   0   'False
  271.             Strikethrough   =   0   'False
  272.          EndProperty
  273.          Height          =   270
  274.          Index           =   5
  275.          Left            =   3030
  276.          TabIndex        =   9
  277.          Top             =   135
  278.          Width           =   300
  279.       End
  280.       Begin VB.Label Margin 
  281.          Alignment       =   2  'Center
  282.          Caption         =   "2.0"
  283.          BeginProperty Font 
  284.             Name            =   "Verdana"
  285.             Size            =   9
  286.             Charset         =   0
  287.             Weight          =   400
  288.             Underline       =   0   'False
  289.             Italic          =   0   'False
  290.             Strikethrough   =   0   'False
  291.          EndProperty
  292.          Height          =   270
  293.          Index           =   4
  294.          Left            =   2430
  295.          TabIndex        =   8
  296.          Top             =   135
  297.          Width           =   300
  298.       End
  299.       Begin VB.Label Margin 
  300.          Alignment       =   2  'Center
  301.          Caption         =   "1.5"
  302.          BeginProperty Font 
  303.             Name            =   "Verdana"
  304.             Size            =   9
  305.             Charset         =   0
  306.             Weight          =   400
  307.             Underline       =   0   'False
  308.             Italic          =   0   'False
  309.             Strikethrough   =   0   'False
  310.          EndProperty
  311.          Height          =   270
  312.          Index           =   3
  313.          Left            =   1875
  314.          TabIndex        =   7
  315.          Top             =   135
  316.          Width           =   300
  317.       End
  318.       Begin VB.Label Margin 
  319.          Alignment       =   2  'Center
  320.          Caption         =   "1.0"
  321.          BeginProperty Font 
  322.             Name            =   "Verdana"
  323.             Size            =   9
  324.             Charset         =   0
  325.             Weight          =   400
  326.             Underline       =   0   'False
  327.             Italic          =   0   'False
  328.             Strikethrough   =   0   'False
  329.          EndProperty
  330.          Height          =   270
  331.          Index           =   2
  332.          Left            =   1275
  333.          TabIndex        =   6
  334.          Top             =   135
  335.          Width           =   300
  336.       End
  337.       Begin VB.Label Margin 
  338.          Alignment       =   2  'Center
  339.          Caption         =   "0.5"
  340.          BeginProperty Font 
  341.             Name            =   "Verdana"
  342.             Size            =   9
  343.             Charset         =   0
  344.             Weight          =   400
  345.             Underline       =   0   'False
  346.             Italic          =   0   'False
  347.             Strikethrough   =   0   'False
  348.          EndProperty
  349.          Height          =   270
  350.          Index           =   1
  351.          Left            =   705
  352.          TabIndex        =   5
  353.          Top             =   135
  354.          Width           =   300
  355.       End
  356.       Begin VB.Label Margin 
  357.          Alignment       =   2  'Center
  358.          Caption         =   "0"
  359.          BeginProperty Font 
  360.             Name            =   "Verdana"
  361.             Size            =   9
  362.             Charset         =   0
  363.             Weight          =   400
  364.             Underline       =   0   'False
  365.             Italic          =   0   'False
  366.             Strikethrough   =   0   'False
  367.          EndProperty
  368.          Height          =   270
  369.          Index           =   0
  370.          Left            =   105
  371.          TabIndex        =   4
  372.          Top             =   135
  373.          Width           =   300
  374.       End
  375.    End
  376. Attribute VB_Name = "TextMArgin"
  377. Attribute VB_GlobalNameSpace = False
  378. Attribute VB_Creatable = False
  379. Attribute VB_PredeclaredId = True
  380. Attribute VB_Exposed = False
  381. Private Sub Form_Load()
  382.     Me.Show
  383. ' The Sliders' settings will work for monitors with 92 dpi ONLY!
  384.     RichTextBox1.RightMargin = RichTextBox1.Width - Screen.TwipsPerPixelX * 30
  385.     Disp = (Slider1.Width - 28 * Screen.TwipsPerPixelX) / 15
  386.     For i = 1 To 15
  387.         Margin(i).Left = Margin(i - 1).Left + Disp
  388.     Next
  389. End Sub
  390. Private Sub Margin_Click(Index As Integer)
  391.     Slider1.Value = Index * 2
  392.     Slider1_Scroll
  393. End Sub
  394. Private Sub RichTextBox1_SelChange()
  395.     If IsNull(RichTextBox1.SelIndent) Then
  396.         Slider1.Enabled = False
  397.         Slider2.Enabled = False
  398.         Exit Sub
  399.     Else
  400.         Slider1.Enabled = True
  401.         Slider2.Enabled = True
  402.         Slider1.Value = RichTextBox1.SelIndent * Slider1.Max / RichTextBox1.RightMargin
  403.         Slider2.Value = (RichTextBox1.SelHangingIndent / RichTextBox1.RightMargin) * Slider2.Max + Slider1.Value
  404.     End If
  405. End Sub
  406. Private Sub Slider1_Scroll()
  407.     RichTextBox1.SelIndent = RichTextBox1.RightMargin * (Slider1.Value / Slider1.Max)
  408.     Slider2_Scroll
  409. End Sub
  410. Private Sub Slider2_Scroll()
  411.     RichTextBox1.SelHangingIndent = RichTextBox1.RightMargin * ((Slider2.Value - Slider1.Value) / Slider2.Max)
  412. End Sub
  413.