Bilder in einem ArcView-Viewfenster über Hotlinks darstellen: Unterschied zwischen den Versionen

GISWiki - Das freie Portal für Geoinformatik (GIS)
Wechseln zu: Navigation, Suche
 
Zeile 84: Zeile 84:
  
 
[[Kategorie:ArcView]]
 
[[Kategorie:ArcView]]
 +
[[Kategorie:Avenue]]

Aktuelle Version vom 15. November 2005, 20:32 Uhr

Bilder in einem View darstellen über Hotlinks

ArcView Demo zum Datei:Hotlink Bilder in einem View darstellen.zip.

Weitere Ideen zum Script:

  • Erweiterung, um verschiedene Dateitypen zu "hotlinken", z. B. durch Verbindung der Dateierweiterung mit dem beim User voreingestellten Programmen. Hierfür sollte allerdings eine Trennung zwischen den in ArcView darstellbaren Dateien und den extern zu ladenen Dateien erfolgen.

'-----------------------------------------------------------------|
'| Hotlinks an image to display in a View (aus der ArcView Hilfe) |
'|                                                                |
'| 03.04.2003, Heinz, h-j.luecking@t-online.de      |   
'| Erweitert, um relative Pfadnamen zu unterstützen               |
'|                                                                |
'-----------------------------------------------------------------|

theVal = SELF

 'Nutzung relativer Pfadnamen
 '---------------------------
 '
 'Grundsätzlich werden nur die von ArcView unterstützten Bildformate
 'unterstützt.
 'Entsprechende Extension z. B. die jpeg-Extensions müssen aktiviert sein.
 '
 'Das Verzeichnis "hotlinks" ist ein Verzeichnis unterhalb des 
 'Verzeichnisses der APR-Projektdatei.
 'In ArcView muss im Feld des Hotlink-Feldes des Themas nur noch der
 'Dateiname der Bilddatei eingegeben werden
 '
 '--|
 '  |-| APR-Verzeichnis mit projektname.apr
 '    |
 '    |-| Unterverzeichnis hotlinks mit den Bildern
 '
 AprDir = av.Getproject.GetFilename.ReturnDir.AsString
 HotlinkSubDir = "/hotlinks/"
 '
 ' Verbinden von APR-Verzeichnis + Hotlinkverzeichnis + Bildname
 '
 theVal = AprDir+HotlinkSubDir+theVal
 '
 ' Austauschen von "\" durch "/",
 '
 theVal = theVal.Substitute("\","/")
 

if (Not (theVal.IsNull)) then
  if (File.Exists(theVal.AsFileName)) then
    srcImage = SrcName.Make(theVal)
    t = Theme.Make(srcImage)
    t.SetVisible(TRUE)

    v = View.Make
    v.AddTheme(t)
    v.SetTOCWidth(0)
    v.SetTOCUnresizable(TRUE)
    v.SetName(theVal.AsFileName.GetBaseName)

    if (av.FindScript("View.CloseImageView") = NIL) then
      s = Script.Make("av.GetProject.RemoveDoc(SELF)")
      s.SetName("View.CloseImageView")

      av.GetProject.AddScript(s)
    end
  
    v.SetCloseScript("View.CloseImageView")
    
    '' If you've created a special GUI for this document,
    '' activate here using something like the following...
    ' v.SetGUI("aNewGUIName")
    ' av.FindGUI(v.GetGUI).Activate
 
    v.GetWin.Open
  
  else
    MsgBox.Warning("File "+theVal+" not found.","Hot Link")
  end
end