home *** CD-ROM | disk | FTP | other *** search
/ Multimédia la Compil' 2 / Sybex_Multimedia_La_Compil_2.iso / vbpiano / vbpiano.frm (.txt) < prev    next >
Visual Basic Form  |  1994-11-19  |  74KB  |  625 lines

  1. Piano
  2. VB MIDI Piano
  3. wwwwwwwwwwwwwwp
  4. Form15G
  5. Panel3D3
  6. SSPanel
  7. PianoKey
  8. SSPanel
  9. PianoKey
  10. SSPanel
  11. PianoKey
  12. SSPanel
  13. PianoKey
  14. SSPanel
  15. PianoKey
  16. SSPanel
  17. PianoKey
  18. SSPanel
  19. PianoKey
  20. SSPanel
  21. PianoKey
  22. SSPanel
  23. PianoKey
  24. SSPanel
  25. PianoKey
  26. SSPanel
  27. PianoKey
  28. SSPanel
  29. PianoKey
  30. SSPanel
  31. PianoKey
  32. SSPanel
  33. PianoKey
  34. SSPanel
  35. PianoKey
  36. SSPanel
  37. PianoKey
  38. SSPanel
  39. PianoKey
  40. SSPanel
  41. PianoKey
  42. SSPanel
  43. PianoKey
  44. SSPanel
  45. PianoKey
  46. SSPanel
  47. PianoKey
  48. SSPanel
  49. PianoKey
  50. SSPanel
  51. PianoKey
  52. SSPanel
  53. PianoKey
  54. SSPanel
  55. PianoKey
  56. SSPanel
  57. PianoKey
  58. SSPanel
  59. PianoKey
  60. SSPanel
  61. PianoKey
  62. SSPanel
  63. PianoKey
  64. SSPanel
  65. PianoKey
  66. SSPanel
  67. PianoKey
  68. SSPanel
  69. PianoKey
  70. SSPanel
  71. PianoKey
  72. SSPanel
  73. PianoKey
  74. SSPanel
  75. PianoKey
  76. SSPanel
  77. PianoKey
  78. SSPanel
  79. PianoKey
  80. SSPanel
  81. PianoKey
  82. SSPanel
  83. PianoKey
  84. SSPanel
  85. PianoKey
  86. SSPanel
  87. PianoKey
  88. SSPanel
  89. PianoKey
  90. SSPanel
  91. PianoKey
  92. SSPanel
  93. PianoKey
  94. SSPanel
  95. PianoKey
  96. SSPanel
  97. PianoKey
  98. SSPanel
  99. PianoKey
  100. SSPanel
  101. PianoKey
  102. SSPanel
  103. PianoKey
  104. SSPanel
  105. PianoKey
  106. SSPanel
  107. PianoKey
  108. SSPanel
  109. PianoKey
  110. SSPanel
  111. PianoKey
  112. SSPanel
  113. PianoKey
  114. SSPanel
  115. PianoKey
  116. SSPanel
  117. PianoKey
  118. SSPanel
  119. PianoKey
  120. SSPanel
  121. PianoKey
  122. SSPanel
  123. PianoKey
  124. SSPanel
  125. PianoKey
  126. SSPanel
  127. PianoKey
  128. SSPanel
  129. PianoKey
  130. SSPanel
  131. PianoKey
  132. SSPanel
  133. PianoKey
  134. SSPanel
  135. PianoKey
  136. SSPanel
  137. FramePianoSettings
  138. Piano MIDI Settings
  139. MS Sans Serif
  140. FrameOctave
  141. Octave
  142. MS Sans Serif
  143. HScrollOctave    
  144. FramePan
  145. L -  Pan  - R
  146. MS Sans Serif
  147. HScrollPan    
  148. FrameMidiChannelOut
  149. MIDI Channel
  150. MS Sans Serif
  151. HScrollMIDIChannel    
  152. FramePatch
  153. Patch
  154. MS Sans Serif
  155. ComboPatch
  156. General MIDI Patches
  157. MS Sans Serif
  158. FrameVolume
  159. Volume
  160. MS Sans Serif
  161. HScrollVolume    
  162. mnuFile
  163. &File
  164. mnuFileExit
  165. E&xit
  166. mnuHelp
  167. &Help
  168. mnuHelpAbout
  169. &About
  170. BlackKey_MouseDown
  171. Index
  172. Button
  173. Shifth
  174.     NoteValid;
  175. KeySignatureOffSet.
  176. ModeOffSetx
  177. PianoScale
  178. Keyboard
  179. BlackKey
  180.     BackColor^
  181. ColorBlackKeyDown
  182. MidiEventOut1
  183. midiChannelOutO
  184. MidiVelOut
  185. MidiVelocitya
  186. MidiNoteOut
  187. SendMidiOutq
  188. Mdevicen
  189. Menu_HelpSelect'
  190. Checked
  191. sndPlaySound
  192. NkeyPathD
  193. BlackKey_MouseUpQ
  194. BLACK
  195. @    Form_Load
  196. WhiteKey_MouseDown
  197. WhiteKey
  198. ColorWhiteKeyDown
  199. WhiteKey_MouseUp'
  200. WHITE
  201. BlackKey_DragDrop
  202. Source
  203. Control
  204. BlackKey_DragOver
  205. State*
  206. WhiteKey_DragDropc
  207. WhiteKey_DragOver
  208. Form_MouseDown
  209. KeyPressedDown
  210. KeyCode
  211. KeyPress
  212. Form_KeyUp3
  213. KeyReleasedUpI
  214. KeyRelease
  215. Form_KeyDown@
  216. MousePKeyCount
  217. MouseKeyCount
  218. NoteMOD
  219. MousePointer
  220. MouseKeyDown
  221.     MouseDown
  222. MouseCount
  223. Mouse'
  224. MousR
  225. eCount
  226. noteOnCatcher;
  227. noteCatchCountr
  228. NoteOnCatch
  229. WhiteKeyWhiteKey
  230. Label1~
  231. CaptionF
  232. MidiOutOpen
  233. hMidiOut
  234. HScroll1_Change
  235. Hscroll1"
  236. Value
  237. MidiChannelOutLabel4
  238. Hscroll2p
  239.     midiPatch
  240. Hscroll3
  241. midiVolume
  242. PanLabel
  243. midiPan(
  244. HScroll2_Change
  245.     ReadPatch^
  246. MidiPortKeyboardJ
  247. MidiPortSongPlayer
  248. TrackChannel
  249. ReadPatchMixer
  250. HScroll3_Change
  251. VolumeLabel
  252.     MidiMixer
  253. VScroll1
  254. Spin2_SpinDownc
  255. LabelPan_
  256. MidiChannelOutLabel_DragDrop`    
  257. Spin2_SpinUp
  258. Pianor
  259. Form_Unload
  260. Cancel
  261. MidiOutClose
  262. hmidioutcopy6
  263. MidiOutOpenPortK
  264. FindPianoPathx
  265. HScroll4_Change
  266. Hscroll4
  267. SSFrame4_DragDrop
  268. Command3D1_Click
  269. WhiteKey1_Click9
  270. WhiteKey1_DragOver
  271. WhiteKey1_DragDrop
  272. Image1_Click
  273. WhiteKey1_MouseDown
  274.     WhiteKey1
  275. Picture
  276. Imagej
  277. Image2
  278. WhiteKey1_MouseUp
  279. Image1
  280. BlackKey1_Click
  281. Picture1_Click
  282. PianoKey_DragDrop
  283. PianoKey_DragOver
  284. PianoKey 
  285. Exit_Click
  286. HScrollOctave_Change
  287. LabelOctave
  288. HScrollOctave
  289. octave
  290. HScrolOctave
  291. Screen
  292. About_Click
  293. About{
  294.     AboutBox1^
  295. Modal5
  296. PanelWhite_DragDropV
  297. PanelWhite
  298. PanelBlackL
  299. PanelBlack_DragDrop
  300. PatchLabel_DragDropz
  301. PanelWhite_DragOver
  302. PanelBlack_DragOver
  303. PanelWhite_Click
  304. PanelWhite_DblClick
  305. BevelOuter
  306. File_Click
  307. SSPanel9_DragDrop_
  308. HScrollMIDIChannel     @
  309. HScrollMIDIChannel_Change8    @
  310. HScrollVolume_ChangeI    
  311. HScrollVolumep    
  312. HScrollPatch_Change
  313. HScrollPatch
  314. HScrollPan_Change*
  315. HScrollPanz
  316. FrameMidiChannelOut
  317.     Explicted
  318. FrameVolume
  319. FrameOctave
  320. ComboPatche
  321.     ListIndexD
  322. Command1_Click
  323. Frame1_DragDrop
  324. ComboPatch_Change
  325. MIDIOutput17
  326. Message
  327. PROGRAM_CHANGE
  328. Data1
  329. Data2-
  330. ActionU
  331. MIDIOUT_SEND
  332. CONTROLLER_CHANGEk
  333. midiMessageOutJ
  334. NOTE_ONu
  335. ComboPatch_Click
  336. mnuExit_Click
  337. mnuHelpAbout_Click
  338. mnuFileExit_Click
  339.     midiData1
  340.     midiData2?
  341. played
  342. example
  343. program
  344. check
  345. should
  346.     available
  347. wherever
  348. simple
  349. advanced
  350. mnuFile_Click
  351.  If you're not quite ready for this "VB MIDI Piano" example, a less 
  352.  advanced MIDI example program is available.  Check out my "One Note MIDI" e
  353.  example.  It should be available wherever "VB MIDI Piano" was located.I
  354.  It's simple...it's FREE!!
  355.  If you really want to do more neat stuff with MIDI and VB, youe
  356.  should check out MIDI CoolTools.a
  357.  I've been developing MIDI applications in Visual Basic since VB 1.0
  358.  and Windows 3.0.  After years of limitations and more limitations withI
  359.  VB and MIDI, it seemed like a good idea to take my experience and
  360.  really make it possible to write MIDI apps in VB.
  361. ...after months of working with two VB custom control experts, wed
  362.  have MIDI CoolTools...i
  363.  MIDI CoolTools is a set of MIDI custom controls for Visual Basic.  MIDI
  364.  CoolTools gives you full access to MIDI from inside of Visual Basic.I
  365.  The following controls make up MIDI CoolTools:n
  366.  MIDI IN Custom Control: The MIDI IN Custom Control automatically detects
  367.  the available MIDI IN ports and allows you to select the port you wish to
  368.  use. As MIDI events are received through the selected MIDI IN port, eacho
  369.  MIDI event receives a high resolution time stamp.  A built in message
  370.  queue allows Long and Short MIDI messages to be received.
  371. *   Receive MIDI messages from external MIDI devices
  372. *   Messages can be retrieved using events or polling
  373. *   Messages are time-stamped with millisecond accuracy
  374. *   Built in internal queuing mechanismi
  375. *   Buffer for receiving system exclusive messages
  376. *   Automatically detects the available MIDI IN portsc
  377.  MIDI OUT Custom Control: The MIDI OUT Custom Control automatically detects
  378.  the available MIDI OUT ports and allows you to select a MIDI OUT port tot
  379.  use.  This control allows MIDI messages to be sent directly to the MIDI
  380.  OUT port and also allows MIDI messages to be queued for playback at the
  381.  appropriate time.
  382. *   Complete control over the contents and timing of MIDI messages.t
  383. *   Queue as many messages as you like (within the constraints of available
  384.  memory)
  385. *   Queue messages prior to starting output and then add more as the output
  386.  proceedse
  387. *   Messages are scheduled for transmission at a time you specifyt
  388. *   Control timing has millisecond resolutiont
  389. *   Automatically detects the available MIDI OUT ports
  390. *   Complete support for system exclusive messages
  391. *   Timer event provides a high-resolution timer
  392. *   Automatically detect whether or not the current device supports patchu
  393.  caching
  394. *   Automatically detect and control current device volume
  395. *   Adjust tempo playback rate in realtime
  396.  Standard MIDI File Custom Control: Read and write Standard MIDI files.c
  397.  This custom control allows you to read any Standard MIDI file into a data
  398.  structure with full access to the MIDI data.  Open MIDI files, close MIDI
  399.  files, create new MIDI files, save changes, insert new MIDI message, 
  400.  modify MIDI messages and delete MIDI message.  Supports MIDI file
  401.  type 0 & 1.
  402. *   Provides the VB programmer with an easy way to read and write Standard
  403.  MIDI filest
  404. *   Both formats 0 (single track) and 1 (multiple-tracks) are supporteda
  405. *   Modify existing MIDI files or create entirely new ones from scratcha
  406. *   Complete control over and access to every type of MIDI message
  407. *   Insert, delete and modify tracks and messages at anytime
  408. *   Action property to open, close, create and save the data to the current
  409.  filei
  410. *   Action property to insert, change and delete the current message
  411. *   Insert new tracks or delete tracks
  412. *   Complete support for system exclusive messages
  413.  Knob Custom Control: Four different knob styles to choose from makes then
  414.  knob custom control very versatile.  A collection of flexible tickmarkh
  415.  properties greatly enhances the knob's usefulness for developingc
  416.  commercial applications. Easily control knob color with five differenth
  417.  color properties.  Over thirty knob properties are at your control tips!
  418. *   Normal, raised, lowered and textured knob styles
  419. *   User definable number of tickmarks with captions
  420. *   Full control of tick caption fonts
  421. *   Control knob color, tick color, tick caption color and backgroundi
  422.  color
  423. *   Bevel properties for 3D style look
  424. *   Link to other MIDI CoolTools custom control without writing any code
  425.  VU Indicator Custom Control: Horizontal and vertical Indicator custom
  426.  controls allow you to quickly create professional VU segmented meters.
  427.  This custom control was specially designed to allow you to simply create
  428.  state-of-the-art graphic LED VU meters.  Three separate colored segment
  429.  sections can be defined with up to twenty LED segments per section.  At
  430.  comprehensive set of 3D bevel properties allows for flexible visual
  431.  control.n
  432. *   Horizontal and vertical indicator (otherwise known as a VU meter).
  433. *   Tie directly to other controls in this package using SmartLink
  434.  propertiest
  435. *   Display information (such as volume, balance, etc.)g
  436. *   A comprehensive set of 3D bevel properties allows for flexible visual
  437.  control.e
  438. *   Three separate colored segment sections can be defined
  439.  Fader/Slider Custom Control: Easily create a cool looking audio mixer with
  440.  the Fader/Slider horizontal and vertical custom controls.  A complete set
  441.  of bevel properties allows you to quickly get that beautiful 3D look.
  442.  Four different thumb styles adds to the flexibility of this control..
  443.  Tickmark properties round out this control's great features.c
  444. *   Complete set of bevel properties
  445. *   Slider control is similar in function to a scroll bar, but looks
  446.  coolerr
  447. *   Pro audio mixer style thumbs
  448. *   Up, down, left and right thumb propertiesa
  449. *   Tick properties with tickcolor, tickcount, tickwidth, ticklength & gap
  450.  control
  451. *   Horizontal and vertical slider custom controls
  452. *   Control of the 3-D style of the track 
  453.  MIDI CoolTools includes all of these custom controls.  Also included&
  454.  is sample code and a printed reference manual.  Standard Retail
  455.  Price is $99 for MIDI CoolTools, but through December 31, 1994 we're&
  456.  offering MIDI CoolTools for $59 + $4 s/h.  $8 s/h for foreign orders.
  457.  You can order with VISA/MC or Check in US funds:h
  458.  MIDI CoolToolsw
  459.  Artic Softwarew
  460.  PO Box 28
  461.  Waterford, WI  53185-0028
  462.  Fax orders: 414-534-78098
  463.  Voice : 414-534-43097
  464.  Compuserve 75410,2203
  465.  Thanks for trying out my VB MIDI Piano Example.
  466.  If this example was useful or if you have other VB MIDI questions
  467.  just let me know...
  468.  - Arthur Edstrom, Artic Softwareo
  469. ComboPatch_Click
  470.  Sets the Patch for the current Midi Channel Out
  471. Patch Midi Out routine
  472. Form_Load
  473. Place the Piano form at the upper left corner of the screena
  474.  General MIDI patches
  475.  You could put this these patches into a PATCH.INI file to allow
  476.  for the selection of other patches than General MIDIl
  477. Acoustic Grand Piano
  478. Bright Acoustic Piano
  479. Electric Grand Piano
  480. Honkytonk Piano
  481. Rhodes Piano
  482. Chorus Piano
  483. Harpsichord
  484. Clavinet
  485. Celesta
  486. Glockenspiel
  487. Music Box
  488. Vibraphone
  489. Marimba
  490. Xylophone
  491. Tubular Bells
  492. Dulcimer
  493. Hammond Organ
  494. Percuss. Organ
  495. Rock Organ
  496. Church Organ
  497. Reed Organ
  498. Accordion
  499. Harmonica
  500. Tango Accordion
  501. Acoustic Guitar (nylon)
  502. Acoustic Guitar (steel)
  503. Electric Guitar (jazz)
  504. Electric Guitar (clean)
  505. Electric Guitar (muted)
  506. Overdriven Guitar
  507. Distortion Guitar
  508. Guitar Harmonics
  509. Acoustic Bass
  510. Electric Bass (finger)
  511. Electric Bass (pick)
  512. Fretless Bass
  513. Slap Bass 1
  514. Slap Bass 2
  515. Synth Bass 1
  516. Synth Bass 2
  517. Violin
  518. Viola
  519. Cello
  520. Contra Bass
  521. Tremolo Strings
  522. Pizzicato Strings
  523. Orchestral Harp
  524. Timpani
  525. String Ensemble 1
  526. String Ensemble 2
  527. Synth Strings 1
  528. Synth Strings 2
  529. Choir Aahs
  530. Voice Oohs
  531. Synth Voice
  532. Orchestra Hit
  533. Trumpet
  534. Trombone
  535. Muted Trumpet
  536. French Horn
  537. Brass Section
  538. Synth Brass 1
  539. Synth Brass 2
  540. Soprano Sax
  541. Alto Sax
  542. Tenor Sax
  543. Baritone Sax
  544. English Horn
  545. Bassoon
  546. Clarinet
  547. Piccolo
  548. Flute
  549. Recorder
  550. Pan Flute
  551. Bottle Blow
  552. Shaku
  553. Whistle
  554. Ocarina
  555. Lead 1 (square)
  556. Lead 2 (saw tooth)
  557. Lead 3 (calliope lead)
  558. Lead 4 (chiff lead)
  559. Lead 5 (charang)
  560. Lead 6 (voice)
  561. Lead 7 (fifths)
  562. Lead 8 (bass + lead)
  563. Pad 1 (new age)
  564. Pad 2 (warm)
  565. Pad 3 (poly synth)
  566. Pad 4 (choir)
  567. Pad 5 (bowed)
  568. Pad 6 (metallic)
  569. Pad 7 (halo)
  570. Pad 8 (sweep)
  571. FX 1 (rain)
  572. FX 2 (sound track)
  573. FX 3 (crystal)
  574. FX 4 (atmo - sphere)
  575. FX 5 (bright)
  576. FX 6 (goblins)
  577. FX 7 (echoes)
  578. FX 8 (sci-fi)
  579. Sitar
  580. Banjo
  581. Shamisen
  582. Kalimba
  583. Bagpipe
  584. Fiddle
  585. Shanai
  586. Tinkle Bell
  587. Agogo
  588. Steel Drums
  589. Wood block
  590. Taiko Drum
  591. Melodic Tom
  592. Synth Drum
  593. Reverse Cymbal
  594. Guitar Fret Noise
  595. Breath Noise
  596. Seashore
  597. Bird Tweet
  598. Telephone Ring
  599. Helicopter
  600. Applause
  601. Gunshot
  602.  Open Midi Driver
  603. Form_Unload
  604. Close the MIDIOut port
  605. HScrollMIDIChannel_Change
  606.  Change Midi Channel to Vscroll1 value
  607.  Display new channel
  608. MIDI Channel 
  609.  Sets the Patch & Volume for the current Midi Channel Outn
  610. HScrollOctave_Change
  611. Octave 
  612. HScrollPan_Change
  613. Pan Midi Out routine
  614. HScrollVolume_Change
  615. Volume 
  616. mnuFileExit_Click
  617. Close the MIDIOut Port
  618. mnuHelpAbout_Click
  619. PianoKey_DragDrop
  620. PianoKey_DragOver
  621. If still on same note, discard
  622. Since drag/drop is being used, we must keep track of the note being 
  623. played.y
  624. Don't let array get out of range
  625.