Maison  >  Article  >  développement back-end  >  Introduction détaillée au code graphique des applications de bureau basées sur XML

Introduction détaillée au code graphique des applications de bureau basées sur XML

黄舟
黄舟original
2017-03-06 16:48:031822parcourir

Comme mentionné précédemment, grâce à XSL, nous pouvons soumettre les mêmes données aux clients finaux sous différentes formes de données. Un fichier XSL décrit la méthode d'affichage des données. Vous pouvez connecter plusieurs XSL au même document XML pour fournir différents formats HTML. représentations basées sur des représentations basées sur XML. Nous pouvons donc en fait créer des applications de bureau basées sur XML. Une représentation graphique basée sur l'architecture Windows ressemble à ceci :

Introduction détaillée au code graphique des applications de bureau basées sur XML

Il y a deux avantages principaux à utiliser cette approche. Premièrement, vous pouvez fonctionner de manière indépendante de la plate-forme et du langage. Données, deuxièmement, vous pouvez implémenter différentes représentations de vue des mêmes données sans programmation.

En fait, vous avez besoin d'un outil capable de convertir les données originales au format XML, puis de les exprimer au format HTML. En fait, dans IE5.0, vous pouvez obtenir différentes vues des données grâce à la prise en charge de XSL. Vous pouvez utiliser le processeur XSL intégré pour produire une sortie à partir d'un flux XML. Les développeurs peuvent écrire différents scripts XSL, puis les traiter à l'aide du processeur XSL intégré d'IE. D'autre part, nous pouvons convertir l'ensemble d'enregistrements au format XML grâce aux fonctions inhérentes au composant ADO. L'exemple de code est le suivant :

 If Dir(XML_FILE) = "" Then
    rs.Save XML_FILE, adPersistXML
  End If

  这里常量adPersistXML表示使用一个XML纲要来保存记录集的内容

  我们再仔细看一下Recordset对象的Save方法,其定义如下:

   Save([FileName As String], [PersistFormat As PersistFormatEnum = adPersistADTG])

Chaque paramètre est facultatif, mais lors de la première sauvegarde. le jeu d'enregistrements sur le disque, vous devez spécifier un nom de fichier. S'il existe un filtre valide lorsque cette méthode est exécutée, seules les données qui passent le filtre peuvent être enregistrées. Lorsque la méthode Close de l'objet Recordset est appelée pour fermer l'objet Recordset, le fichier est automatiquement fermé. Une fois le Recordset enregistré sur le disque, vous pouvez utiliser la méthode Open pour le lire. Le code spécifique est le suivant :

   rs.open "c:\myrs.xml"

Ensuite, nous analysons le problème de l'affichage des données XML par IE5. XSL est basé sur le projet de norme le plus récent du W3C. Nous discutons ici de l'utilisation de VB pour créer une application qui accède aux données de la source de données via l'interface ADO. Le jeu d'enregistrements résultant peut être affiché dans différents formats. En écrivant des documents XSL, vous pouvez ajouter différentes vues à volonté.

Par exemple, une fois que vous avez extrait un ensemble de résultats, vous pouvez utiliser le contrôle DataGrid pour afficher facilement les données en VB. Le code spécifique est le suivant :

 Set rs = New ADODB.Recordset
   rs.CursorLocation = adUseClient

   queryString = "select * from Employees"
   rs.Open queryString, "NorthWind" 'NorthWind是微软的示例数据库,很容易在
    'access或者是SQL SERVER中找到
   rs.ActiveConnection = Nothing 
   Set DataGrid1.DataSource = rs

Dans de nombreux cas, cette vue unique ne suffit pas, vous avez besoin d'un contrôle strict sur chaque champ. Les enregistrements de l'ensemble du tableau peuvent être représentés sous forme de tableaux et d'arborescences. Fournir plusieurs vues permettra aux utilisateurs de se sentir plus à l'aise. La combinaison de XML et XSL est une bonne solution à ce problème. Vous pouvez utiliser pleinement les fonctionnalités du contrôle WebBrowser dans IE5 pour la navigation directe.
Le composant ADO lui-même ne génère aucun document XSL à partir des documents XML qu'il génère. Cela ne signifie pas que vous ne pouvez pas rédiger vous-même un document XSL générique pour modifier la façon dont les données sont affichées. Par exemple, afin d'afficher automatiquement un document XML contenant un jeu d'enregistrements ADO sous forme de tableau, vous devez ajouter le code suivant en en-tête du document XML :

  <?xml-stylesheet type="text/xsl" href="simple.xsl"?>

Ce fichier simple.xsl doit être placé entre et Dans le même répertoire que le document XML, il contient deux boucles imbriquées. La première boucle énumère tous les attributs de l'élément. Les noms de ces attributs sont affichés sous forme de titres sur la première ligne. le jeu d'enregistrements.

Le code du fichier simple.xsl est représenté comme suit :

<?xml version="1.0"?>
  <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl" 
   xmlns:html="http://www.w3.org/TR/REC-html40"
   result-ns=""
   language="JScript">
  <xsl:template match="/">
  <html>
  <head>
  <title>RowsetSchema</title>
  <style>
   .stdText 
   {
    font-Family:verdana;
    font-Size: 9px;
   }
  </style>
  </head>
  <body>
   <table width="100%" border="1">
   <xsl:for-each select="xml/s:Schema/s:ElementType/s:attribute">
    <th class="stdText"><xsl:value-of select="@type" /></th>
    </xsl:for-each>
    <xsl:for-each select="xml/rs:data/z:row">
    <tr>
     <xsl:for-each select="@*">
     <td class="stdText" valign="top"><xsl:value-of match="@*"/></td>
     </xsl:for-each>
    </tr>
    </xsl:for-each>
   </table>
  </body>
  </html>
  </xsl:template>
  </xsl:stylesheet>

Ce qu'il faut noter ici, c'est la syntaxe pour énumérer tous les attributs d'un nœud donné. En fait, nous. besoin d'obtenir n'importe quel Tous les attributs de l'élément, la chaîne @* représente tous les attributs (le nom d'un attribut doit toujours être précédé de @. Pour utiliser cette valeur, le Le nœud doit définir l'attribut qui lui correspond. , représenté par @*

En utilisant le contrôle WebBrowser comme moteur de navigation dans vos données, vous pouvez utiliser XML et XSL pour séparer le contenu de la couche de présentation. Dans ce modèle, le rôle de XSL est le suivant : Un langage de balisage (plutôt qu'un langage de programmation) pour décrire comment afficher les données XML. Pour ajouter une nouvelle vue, il vous suffit d'ajouter un document XSL correspondant. , ce modèle de document/vue basé sur le Web peut être utilisé sous MFC. Analogie avec le modèle de document/vue

Enfin, nous devons parler de la différence entre XSL et CSS. La principale différence est que XSL est appliqué. à l'ensemble du document XML, tandis que CSS affiche uniquement les balises HTML. Le formulaire a un impact. XSL est un langage de balisage pour le traitement des documents, et CSS est un ensemble d'attributs utilisé pour représenter les attributs d'un élément dans le langage de balisage. peut utiliser CSS lors de la génération d'une sortie HTML à partir d'un flux de données XML. Du point de vue actuel, il s'agit de deux technologies différentes

Ce qui précède est une introduction détaillée au code graphique des applications de bureau basées sur XML. contenu, veuillez faire attention au site Web PHP chinois (www.php.cn )


.
Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn