-2

複数の VB6.frmファイルがあります。以下の例を参照してください。関数とサブルーチンをコードから取り除き、フォームのデザインだけを残します。

私がする必要があるのは、「属性」で始まる最後の行を見つけることです。この行の後にはすべてを削除する必要があるからです。

.frmパターン マッチングなどを使用して、最後の属性行の後のすべてが削除されるようにファイルを処理するにはどうすればよいですか? ファイルをトラバースしている場合、最後の属性行がどこにあるかをどのように確認できますか?

.frmファイルの例:

VERSION 5.00
Begin VB.Form Form1
    Caption = "Form1"
    ClientHeight = 3195
    ClientLeft = 60
    ClientTop = 345
    ClientWidth = 4680
    LinkTopic = "Form1"
    ScaleHeight = 3195
    ScaleWidth = 4680
    StartUpPosition = 3 'Windows Default
    Begin VB.CommandButton Command1
        Caption = "Command1"
        Height = 495
        Left = 1800
        TabIndex = 1
        Top = 1320
        Width = 1215
    End
    Begin VB.TextBox Text1
        Height = 495
        Left = 360
        TabIndex = 0
        Text = "Text1"
        Top = 240
        Width = 1215
    End
End

Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

Private Sub Command1_Click()
    Text1.Text = "Hello World"
End Sub
Private Sub Form_Load()
    Text1.BackColor = vbBlue
End 
4

1 に答える 1

0

必要なルールは 2 つだけです。

1) 行が「属性」で始まる場合、削除しないでください。2) 行が 'Attribute' で始まる場合、後続のすべての行の削除を開始するフラグを設定します。

ルール 1 により、後続の属性行を削除できなくなります。最初に遭遇した属性の後には、それが属性でない限り、保持したいものは何もないはずです。

于 2011-11-21T06:45:36.307 に答える