_Benny_ Geschrieben 6. September 2007 Geschrieben 6. September 2007 Hi, und somit gliedere ich mich auch hier in den Kreis der Fragenden ein Es geht um folgendes: Für die Arbeit habe ich ein kleines Programm geschrieben, was eine (Text)Datei einliest, anzeigt, man über ein Textfeld einen Suchbegriff eingeben kann und er das dann im Text sucht und markiert. Soweit - sogut ... aber nun möchte ich ein Hourglass einbauen, was erscheint, wenn die Datei geladen wird (was etwas dauern kann - die 151 kb große Resident Evil Komplettlösung (brauchte was größeres zum testen O=>) brauch immer ein Weilchen). Es ist soweit auch richtig verankert, aber weder txt_Anzeige.MousePointer = 11 (Textfeld des Anzeigetextes), noch frm_Textfinder.Mousepointer = 11 (Programmformular) tun ihren Dienst. Hier der Quellcode: Option Explicit Private i_Start As Integer Private Search As String Private Source As String Private Sub cmd_Ausfuehren_Click() i_Start = i_Start + 1 i_Start = InStr(i_Start, txt_Anzeige.Text, txt_Suche.Text) If i_Start = 0 Then Call MsgBox("Nicht gefunden!") Else txt_Anzeige.SelStart = i_Start - 1 txt_Anzeige.SelLength = Len(txt_Suche) End If End Sub Private Sub Form_Load() txt_Datei.Text = "" txt_Suche.Text = "" txt_Anzeige.Text = "" i_Start = 0 End Sub Private Sub mnu_DBeenden_Click() End End Sub Private Sub mnu_DOeffnen_Click() dlg_Suche.Filter = "*.txt(txt-Dateien)|*.txt|*.*(Alle Dateien)|*.*" dlg_Suche.DialogTitle = "Öffnen einer Textdatei" dlg_Suche.ShowOpen If dlg_Suche.FileName = "" Then Exit Sub End If txt_Anzeige.Text = "" txt_Anzeige.MousePointer = 11 txt_Datei.Text = dlg_Suche.FileName txt_Anzeige.MousePointer = 0 Dim DateiNr As Integer DateiNr = FreeFile Open dlg_Suche.FileName For Input As DateiNr Dim Temp As String Do Line Input #DateiNr, Temp txt_Anzeige.Text = txt_Anzeige.Text & Temp & vbCrLf Loop Until EOF(DateiNr) = True Close DateiNr End Sub Bestimmt fehlt was ^__^ Ich habe auch schon geschaut - die Stelle von txt_Anzeige.MousePointer = 11 ist richtig! Für Hilfe wäre ich sehr dankbar Gruß Benny
Amstelchen Geschrieben 6. September 2007 Geschrieben 6. September 2007 versuch bitte mal Screen.Mousepointer = vbHourglass und nach einlesen Screen.Mousepointer = vbDefault ich wüsste nicht (und habs noch nie versucht), einem textfeld eine sanduhr zuzuweisen. AFAIR gibts beim klassischen VB sowieso nur die möglichkeit über das Screen-objekt. s'Amstel
_Benny_ Geschrieben 6. September 2007 Autor Geschrieben 6. September 2007 Ich habe es anders lösen können: Das Problem war, das der MousePointer noch beim Einlesen wieder zurückgesetzt worden ist. Mein Fehler war, dass ich eben den Mauszeiger zu früh gesetzt habe. Nachdem ich den Default Mousebutton ans Ende gesetzt habe, gehts, wie ich es mir wünsche. Dennoch Danke
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden