FAQ


V tΘto rubrice najdete odpov∞di na svΘ otßzky, kterΘ m∙₧ete zasφlat na adresu vbtipy@seznam.cz. Pokud nebudeme znßt odpov∞∩ na n∞jakou otßzku, objevφ se v Φßsti Otßzky bez odpov∞di a budete-li znßt odpov∞∩ vy, m∙₧ete nßm ji pomocφ v²Üe uvedenΘ adresy zaslat, rßdi ji zve°ejnφme.

Otßzky a odpov∞di

Mßm vytvo°en² sv∙j prvek, ale nevφm, jak mßm ud∞lat, aby se v menu prvku objevila polo₧ka About?

Nejd°φve musφte vytvo°it funkci, kterß bude zobrazovat po₧adovanΘ informace. Potom staΦφ tΘto funkci nastavit p°φznak AboutBox. Zvolte polo₧ku Procedure Attributes z menu Tools. Ze seznamu Name vyberte vaÜi funkci a p°i°a∩te jφ vlastnost AboutBox ze seznamu Procedure ID. Pokud potom p°idßte prvek na formulß°, zobrazφ se v okn∞ Properties polo₧ka About, kterou kdy₧ zvolφte, provede se vybranß funkce.

Public Sub ShowAbout()
  MsgBox "About okno"
End Sub


ProΦ kdy₧ si vytvo°φm vlastnφ prvek ActiveX a do k≤du procedury Resize napφÜu k≤d: Label1.Top = UserControl.Height/2, tak se mi label nezobrazφ p°esn∞ uprost°ed mΘho prvku?
K≤d, kter² uvßdφte, neumφs¥uje do st°edu prvku label, ale jeho hornφ okraj. Mß-li b²t label uprost°ed, musφ k≤d vypadat takto:
Label1.Top = (UserControl.Height/2)-(Label1.Height/2)

Jak lze zφskat text z libovolnΘho textovΘho pole v systΘmu, kdy₧ znßm jeho handle?
Dim str As String, ln As Long

ln = SendMessage(Text1.hwnd, WM_GETTEXTLENGTH, 0, 0) + 1
str = Space(ln)
SendMessage Text1.hwnd, WM_GETTEXT, ByVal ln, ByVal str

MsgBox str

Pot°eboval bych pomocφ funkce API vyvolat dialog "Najφt". SlyÜel jsem, ₧e je to p°esn∞ funkce Findtext. Jejφ deklaraci jsem si naÜel v programu API Text Viewer vΦetn∞ typu FINDREPLACE.
Proto₧e je k≤d pro zobrazenφ dialogu pon∞kdu delÜφ, umφs¥ujeme pouze odkaz na °eÜenφ problΘmu, support.microsoft.com. Strßnka rovn∞₧ obsahuje podrobn² popis °eÜenφ.



Otßzky bez odpov∞di

Mßm problΘmy s integrovßnφm ActiveX vytvo°en²m ve VB 6.0 do webovΘ strßnky. StarΘ soubory, kterΘ mßm, fungujφ bezchybn∞, ale novΘ se necht∞jφ v∙bec naΦφst. Dßval jsem je tam p°es MS Front Page XP, ale kdy₧ je pustφm p°es VB 6.0, tak taky fungujφ. Nevφte Φφm by to mohlo b²t?


Jak mohu aktivovat ·sporn² re₧im?


Vytvo°il jsem program, kter² pracuje se soubory vlastnφho formßtu. Soubory majφ vlastnφ p°φponu .dpw. Soubory jsou asociovßny s m²m programem. Mohu n∞jak²m zp∙sobem p°idat do vlastnostφ tohoto typu souboru (*.dpw) dalÜφ zßlo₧ku, kterß by obsahovala bli₧Üφ informace o dokumentu, podobn∞ jako je to u souboru .doc ve Wordu?


Znßte n∞jak² prvek ActiveX, kter² by zv²raz≥oval syntaxi zdrojovΘho k≤du HTML a k≤du Visual Basicu?


Neexistuje n∞jak² OCX, nebo DLL knihovna, kterß by umo₧≥ovala odesφlßnφ krßtk²ch textov²ch zprßv rovnou z PC p°es modem?


Jak lze p°ijφmat/posφlat data na n∞kter² z port∙ ve Windows 2000?


Nevφte kde se dß sehnat (pokud existuje) prvek, kter² se chovß jako textovΘ pole ve Wordu?


Pou₧φvßm VB6 a cht∞l bych z mΘho programu otev°φt soubor PhotoPaintu. K≤d vypadß nßsledovn∞:

Dim xApp as PHOTOPAINT.CPntAutomate
xApp.FileOpen ("nazov suboru")

Bohu₧el to takto nefunguje. Co jeÜt∞ musφm zadat, aby se soubor otev°el?


Jak zjistit, kolik bajt∙ bylo sta₧eno p°es Internet v p°edem danΘ dob∞? Jde mi o p°ipojenφ p°es lokßlnφ sφ¥, ne p°es modem.


Jak se dß ve Visual basicu ovlßdat USB port?


Ve Windows 98 jsem vytvo°il program s ovlßdacφm prvkem Timer. Program fungoval bez problΘm∙, ale kdy₧ jsem jej spustil na Windows 2000, prvek Φasoval asi 5x rychleji. Nevφte so s tφm?


Pot°ebuji ve svΘm programu pou₧φt pr∙hledn² textbox nebo textbox, ve kterΘm by byl na pozadφ mnou vybran² obrßzek. Na Internetu jsem naÜel t°i r∙znΘ nßvody, ale ani jeden neposkytuje takovΘ funkce jako p∙vodnφ textbox (ScrollBar, DataField atd.).