Mar 28, 2010

விசுவல் பேசிக் பயன்பாடுகளை புதிய XP ஸ்டைலில் மாற்றுவது எப்படி?

ஒரு விசுவல் பேசிக் பயன்பாட்டை நீங்கள் XP இயங்குதளத்தில் இயக்கும் போது அதன் தலைப்புப்பட்டை ( Title bar ) மட்டுமே எக்ஸ்பி தோற்றத்தில் அமைந்திருக்கும். ஆனால் படிவத்தில் உள்ள மற்ற கண்ட்ரோல்கள் எல்லாமே பழைய விண்டோஸ் வடிவத்திலேயே காட்சியளிக்கும்.




இதற்காக வெளியிலிருந்து எந்த ActiveX Control ம் இல்லாமல் நிரல்கள் மூலம் விண்டோஸில் உள்ளிருக்கும் XP தோற்றப்பொலிவை விசுவல் பேசிக் பயன்பாட்டுக்கு கொண்டு வரலாம்.

1. ComCtl32.dll கோப்புகளை பயன்பாட்டில் இணைத்தல்

இவை உங்கள் கணிணியில் உள்ள ComCtl32.dll என்ற கோப்பு முலமாக செயல்படுத்த்ப்படுகின்ற்ன. இந்த கோப்பின் பதிப்பு ( version ) 6 அல்ல்து அதற்கு மேம்பட்டதாக இருக்க வேண்டும்.இந்த dll கோப்பை நீங்கள் உங்கள் புராஜெக்ட்டில் ComCtl InitCommonControls என்ற API பங்சனை அழைப்பதன் மூலம் இணைக்க முடியும்.

முதலில் உங்கள் பயன்பாட்டிலிருந்து ComCtl32.dll கோப்புக்கு இணைப்பு கொடுக்க வேண்டும். அதுவும் எந்த படிவமும் காட்டப்படுவதற்கு முன் InitCommonControls என்ற API பங்சனை அழைக்க வேண்டும். உங்கள் புராஜெக்ட்டில் Project – Add Module கொடுங்கள். உருவாக்கப்பட்ட புதிய மாடுலில் கீழ்வரும் கோடிங்கை சேருங்கள்.

Private Type tagInitCommonControlsEx
lngSize As Long
lngICC As Long
End Type

Private Declare Function InitCommonControlsEx Lib "comctl32.dll" _
(iccex As tagInitCommonControlsEx) As Boolean
Private Const ICC_USEREX_CLASSES = &H200

Public Function InitCommonControlsVB() As Boolean
On Error Resume Next
Dim iccex As tagInitCommonControlsEx
' Ensure CC available:
With iccex
.lngSize = LenB(iccex)
.lngICC = ICC_USEREX_CLASSES
End With
InitCommonControlsEx iccex
InitCommonControlsVB = (Err.Number = 0)
On Error Goto 0
End Function

பின் கீழ் உள்ள பகுதியில் இரண்டாவது மற்றும் 3 வது வரியில் உங்கள் பயன்பாட்டில் முதன்முதலில் காட்ட வேண்டிய படிவத்தின் பெயரைக்கொடுங்கள்.

Public Sub Main()
InitCommonControlsVB
load form1
Form1.show
End Sub

இந்த மாடுலை சேமித்த பின்னர் Project – Properties செல்லுங்கள். அதில் Startup என்பதில் Sub Main என்பதை தெரிவு செய்யுங்கள். பிறகு உங்கள் புரோகிராமை இயங்கும் பயன்பாடாக மாற்றவும்.( Executable Application ). இதற்கு File – Make Yourname.exe என்பதை தேர்வு செய்தால் குறைகள் நீக்கப்பட்டு அப்ளிகேசன் கோப்பாக (.exe) மாற்றப்படும்.

2.மணிஃபெஸ்ட் கோப்புகள் ( Manifest )

மணிஃபெஸ்ட் என்ற வகை கோப்புகள் Microsoft நிறுவனத்தால் வழங்கப்ப்ட்ட XML கோப்புகளாகும். இவை Dll கோப்பு பதிப்புகளில் ஏற்படும் முரண்பாடுகளை நீக்க உதவுகிறது.

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>


<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">

<assemblyIdentity

version="1.0.0.0"

processorArchitecture="X86"

name="CompanyName.ProductName.YourAppName"

type="win32" />

<description>Your application description here</description>

<dependency>

<dependentAssembly>

<assemblyIdentity
  type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"

processorArchitecture="X86"

publicKeyToken="6595b64144ccf1df"

language="*" />

</dependentAssembly>

</dependency>

</assembly>

இந்த மணிஃபெஸ்ட் கோப்பை உங்கள் பயன்பாட்டின் (Application) பெயரில் தான் சேமிக்க வேண்டும். உங்கள் பயன்பாட்டின் பெயர் Timeslot.exe என்றால் மணிஃபெஸ்ட் கோப்பை Timeslot.exe.manifest என்று சேமிக்க வேண்டும்.

முக்கிய குறிப்புகள் :
1. இந்த புதிய XP ஸ்டைல் இயக்க நேரத்தில் மட்டுமே செயல்படும். ( Run Time )
2. Option பட்டன்கள் ஒரு பிரேமின் மீது ( Frame ) வைக்கப்படும் போது அவை ஒழுங்காக தெரியாது.அதனை Picture box இல் வைத்துக்கொள்ளவேண்டும்.
3. மணிஃபெஸ்ட் கோப்பின் பெயரை மாற்றிவிட்டால் புதிய XP ஸ்டைல் மறைந்து வழக்கமான தோற்றமே தோன்றும்.

1 comment:

  1. நிரலாக்கத்தை தமிழில் படிக்க ஆர்வம் குறைவாக இருக்கிறதென நினைக்கிறேன்.

    ReplyDelete