Oppure

Loading
29/08/08 8:11
mirkos90
Salve ragazzi XD mi kiedevo (se è gia stato chiesto io non ho trovato alcuna cosa a riguardo, quindi se è già stato kiesto segnalate il link) se è possibile in visual basic creare un highlighter del tipo GeShI in PHP però che funzia all'istante.
Mi spiego molto mejo:
io ho una textarea dove scrivo
<?php
echo("Ciao";);
?>
e mentre che scrivo il <?php diventa rosso e grassettato, l'echo diventa blu e le parole dentro le "" diventano rosse..
Sarebbe ancora + comodo se lo script riconoscesse da solo il linguaggio ke si stà scrivendo..

Please mi serve molto questa cosa :)
GRAZIE :k:
Ultima modifica effettuata da mirkos90 29/08/08 8:16
aaa
29/08/08 8:47
mirkos90
uhm no, non era quello ke cercavo :S:S:S:S
mi serve una cosa del tipo no-paste instantaneo XD
aaa
29/08/08 9:20
GrG
dovresti mettere in un timer un codice che cerchi le parole che desideri (funzione Instr()) e poi le colora.
aaa
29/08/08 12:59
Overflow
scusate cancellate
Ultima modifica effettuata da Overflow 29/08/08 13:02
aaa
29/08/08 13:02
ruggy94
Postato originariamente da Overflow:

prova questo codice
Codice quotato da codeproject.com/KB/vb/… :
'This program check whether webcam is available or not
' if available then capture and displays in picture box

'Created by Dixanta Bahadur Shrestha
'Created Date: 12-March-2006

'Programmer does not garuntees if  not functions well

Global Const ws_child As Long = &H40000000
Global Const ws_visible As Long = &H10000000

Global Const WM_USER = 1024
Global Const wm_cap_driver_connect = WM_USER + 10
Global Const wm_cap_set_preview = WM_USER + 50
Global Const WM_CAP_SET_PREVIEWRATE = WM_USER + 52
Global Const WM_CAP_DRIVER_DISCONNECT As Long = WM_USER + 11
Global Const WM_CAP_DLG_VIDEOFORMAT As Long = WM_USER + 41
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal a As String, ByVal b As Long, ByVal c As Integer, ByVal d As Integer, ByVal e As Integer, ByVal f As Integer, ByVal g As Long, ByVal h As Integer) As Long

Dim hwdc As Long
Dim startcap As Boolean
Private Sub cmdCapture_Click()
Dim temp As Long

  hwdc = capCreateCaptureWindow("Dixanta Vision System", ws_child Or ws_visible, 0, 0, 320, 240, Picture1.hWnd, 0)
  If (hwdc <> 0) Then
    temp = SendMessage(hwdc, wm_cap_driver_connect, 0, 0)
    temp = SendMessage(hwdc, wm_cap_set_preview, 1, 0)
    temp = SendMessage(hwdc, WM_CAP_SET_PREVIEWRATE, 30, 0)
    startcap = True
    Else
    MsgBox ("No Webcam found")
  End If
End Sub

Private Sub cmdClose_Click()
Dim temp As Long
If startcap = True Then
temp = SendMessage(hwdc, WM_CAP_DRIVER_DISCONNECT, 0&, 0&)
startcap = False
End If
End Sub

Private Sub cmdVideoFormat_Click()
 Dim temp As Long
 If startcap = True Then
  temp = SendMessage(hwdc, WM_CAP_DLG_VIDEOFORMAT, 0&, 0&)
End If
End Sub



codeproject.com/KB/vb/…

Credo che tu volessi rispondere al post della webcam :D
aaa
29/08/08 13:07
Overflow
@ruggy94 ...si infatti.

Credo che dovresti avere un database con tutte le parole chiave dei linguaggi, e poi attraverso un timer (come ha detto grg) andare a controllare se nella textarea ci sia una parole che esiste nel database.
aaa
29/08/08 13:55
Overflow
ti posto il codice che ho fatto, ma bisogna modificarlo un po.

inserisci un richtextbox chiamala (rb) e un timer(timer1).

Dim keyWords() As String

Private Sub Form_Load()
Dim value As String

Open "C:\keywords.txt" For Input As 1
value = Space(LOF(1))
Line Input #1, value

Close #1

keyWords = Split(value, ",")

For i = 0 To UBound(keyWords)
    keyWords(i) = Replace(keyWords(i), " ", "")
    keyWords(i) = LCase(keyWords(i))
Next i




End Sub

Private Sub Timer1_Timer()
Dim a, pos As Integer
Dim tmp() As String
Dim val As String
val = rb.Text
val = LCase(val)

For i = 0 To UBound(keyWords)
    tmp = Split(val, " ")
    For y = 0 To UBound(tmp)
        If (tmp(y) = keyWords(i)) Then
            a = InStr(1, val, keyWords(i))
            pos = rb.SelStart
            rb.SelStart = a - 1
            rb.SelLength = Len(keyWords(i))
            rb.SelColor = vbBlue
rb.font.bold=true
            rb.SelStart = pos
        End If
    Next y
    rb.SelColor = vbBlack
Next i

End Sub

Ultima modifica effettuata da Overflow 29/08/08 13:59
aaa