সি #, .নেটে কীভাবে একটি শব্দ বাজানো যায়


124

আমার সি উইন্ডোজ অ্যাপ্লিকেশন সি # /। নেট এ লেখা আছে।

বোতামটি ক্লিক করা হলে আমি কীভাবে একটি নির্দিষ্ট শব্দ বাজাতে পারি?

উত্তর:


233

আপনি ব্যবহার করতে পারেন:

System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();

32
এই নিখুঁত উত্তর একটি নতুন ব্যবহারকারী বুঝতে পারবেন না কারণ যে SoundPlayer System.Media জন্যে ....
Khilen Maniyar

30
@Ali ... stackoverflow.com/questions/2361857/what-does-means-in-c-sharp \ "এ" এর মানে আক্ষরিক। অর্থ নিম্নলিখিত পংক্তি ব্যাখ্যা, স্ট্রিং \ আসলে একটি হতে হবে " আউটপুট, আক্ষরিক চরিত্রের অর্থ "\\" রাখার পরিবর্তে
প্রবীণ

@ প্রভিনের উত্তর সবেমাত্র আরেকটি তথ্যমূলক তথ্য দিয়েছে। ডেক্সটারকে "@" প্রতীক জিজ্ঞাসা করার জন্য ধন্যবাদ।
অ্যালেন লিন্যাটোক

2
@bporter, এটি এমপি 3 ফাইলগুলির সাথে কাজ করছে বলে মনে হয় না; এটি কেবল ওয়াভ ফর্ম্যাটেই সীমাবদ্ধ
নাজিব

কী লজ্জা পাচ্ছে এই এপিআই! এটি এমপি 3 বা এমআইডিআই ফাইল বাজায় না। আমার জন্য সম্পূর্ণ অকেজো। কমপক্ষে উইন্ডোজ এক্সপি থেকে উইন্ডোজের এমপি 3 এবং এমআইডিআই-র জন্য স্থানীয় সমর্থন রয়েছে। মাইক্রোসফ্টের লজ্জা!
এলময়ে

91

আপনি সিস্টেমসাউন্ড ব্যবহার করতে পারেন , উদাহরণস্বরূপ System.Media.SystemSounds.Asterisk.Play();,।


খুব দরকারী. এটি সিস্টেমের ডিফল্ট ব্যবহার করতে সহায়তা করে।
বাবাক.আবাদ

4
এটি লক্ষণীয় গুরুত্বপূর্ণ যে আপনি যদি উইন্ডোজ সেটিংসে সিস্টেমের শব্দ বন্ধ করে থাকেন (কমপক্ষে নতুন উইন্ডোজ) এটি কিছু খেলবে না play
আর্থল

32

উইন্ডোজ ফর্মগুলির জন্য একটি উপায় হ'ল ব্যবহার করা SoundPlayer

private void Button_Click(object sender, EventArgs e)
{
    using (var soundPlayer = new SoundPlayer(@"c:\Windows\Media\chimes.wav")) {
        soundPlayer.Play(); // can also use soundPlayer.PlaySync()
    }
}

এমএসডিএন পৃষ্ঠা

এটি ডাব্লুপিএফ-এর সাথেও কাজ করবে, তবে আপনার কাছে এমএসডিএন পৃষ্ঠা ব্যবহারের মতো অন্যান্য বিকল্প রয়েছেMediaPlayer


1
আরও ভাল, প্রোডাকশন কোডে, এটি একবারে তৈরি করুন এবং প্রতিবার বোতামটি টিপে গেলে এটি তৈরির চেয়ে বহুবার ব্যবহার করুন।
শিবুনি

আমি সেই ফাংশনটির নামকরণ করলাম ButtonClick, কেবল কারণ এটি মনে হয় যে এটি সি # নামকরণের শৈলী অনুসরণ করে।
ইথান বিয়ারলাইন

1
@ ইথানবিয়ারলাইন - উত্তরটি পোস্ট করার সময় সম্ভবত এটি নামকরণের সম্মেলন ছিল;)
ক্রিসএফ

1
হাহ। তাহলে কি সেই পুরাতন সম্মেলন হয়েছিল?
ইথান বিয়ারলাইন

@ ইথানবিয়ারলিন এটি এখনও ভিজ্যুয়াল স্টুডিওর উইন্ডোজ প্রকল্পগুলির দ্বারা স্বয়ংক্রিয়ভাবে তৈরি হয়
জেএডি

13

অতিরিক্ত তথ্য.

উইন্ডোজ পরিবেশে নির্বিঘ্নে ফিট করতে চান এমন অ্যাপ্লিকেশনগুলির জন্য এটি কিছুটা উচ্চ-স্তরের উত্তর। অন্যান্য উত্তরে নির্দিষ্ট শব্দ বাজানোর প্রযুক্তিগত বিবরণ সরবরাহ করা হয়েছিল। তদাতিরিক্ত, সর্বদা এই দুটি পয়েন্ট নোট করুন:

  1. সাধারণ পরিস্থিতিতে যেমন পাঁচটি স্ট্যান্ডার্ড সিস্টেম শব্দ ব্যবহার করুন

    • তারকাচিহ্ন - আপনি বর্তমান ইভেন্টটি হাইলাইট করতে চাইলে খেলুন

    • প্রশ্ন - প্রশ্ন সহ খেলুন (সিস্টেম বার্তা বাক্স উইন্ডো এটি চালায়)

    • বিস্ময়বোধক - excalamation আইকন সহ খেলা (সিস্টেম বার্তা-বাক্স উইন্ডোতে এই এক নাটকগুলি)

    • বীপ (ডিফল্ট সিস্টেমের শব্দ)

    • ক্রিটিকাল স্টপ ("হাত") - ত্রুটি নিয়ে খেলুন (সিস্টেম বার্তা বাক্স উইন্ডো এটি চালায়)
       

    ক্লাসের পদ্ধতিগুলি System.Media.SystemSoundsএগুলি আপনার জন্য খেলবে।
     

  2. সাউন্ড কন্ট্রোল প্যানেলে আপনার ব্যবহারকারীর দ্বারা কাস্টমাইজযোগ্য হিসাবে অন্য কোনও শব্দ প্রয়োগ করুন

    • এইভাবে ব্যবহারকারীরা সহজেই আপনার অ্যাপ্লিকেশন থেকে শব্দ পরিবর্তন করতে বা মুছে ফেলতে পারে এবং এর জন্য আপনাকে কোনও ইউজার ইন্টারফেস লেখার দরকার নেই - এটি ইতিমধ্যে রয়েছে it
    • প্রতিটি ব্যবহারকারীর প্রোফাইল এই শব্দগুলিকে নিজস্ব উপায়ে ওভাররাইড করতে পারে
    • কিভাবে:

এই অতিরিক্ত তথ্যের জন্য আপনাকে ধন্যবাদ। আমি একটি উদাহরণ যুক্ত করতে চাই: হাতটিSystem.Media.SystemSounds.Hand.Play(); Thread.Sleep(2000); বাজায় । মনে রাখবেন যে এটি অবিচ্ছিন্নভাবে খেলছে, এখানে আমি শব্দটির সমাপ্তির জন্য অপেক্ষা করতে একটি স্লিপ কমান্ড যুক্ত করেছি। যদি আপনি অপেক্ষা না করেন এবং অন্য শব্দ বাজান, পূর্ববর্তীটি তত্ক্ষণাত বন্ধ হয়ে যায়।
ম্যাট


2

সি # ব্যবহার করে উইন্ডোজ ফর্মে একটি অডিও ফাইল প্লে করতে আসুন নীচের হিসাবে সাধারণ উদাহরণটি পরীক্ষা করে দেখুন:

1. ভিজুয়াল স্টুডিওতে যান (ভিএস -2008 / 2010/2012) -> ফাইল মেনু -> নতুন প্রকল্পে ক্লিক করুন।

2. নতুন প্রকল্পে -> উইন্ডোজ ফর্ম অ্যাপ্লিকেশনটিতে ক্লিক করুন -> নাম দিন এবং তারপরে ঠিক আছে ক্লিক করুন।

একটি নতুন "উইন্ডোজ ফর্ম" প্রকল্প খোলা হবে।

3.আপনি উইন্ডোজ ফর্ম থেকে টুলবক্স থেকে একটি বোতাম নিয়ন্ত্রণ ড্র্যাগ এবং ড্রপ।

৪. স্বয়ংক্রিয়ভাবে ডিফল্ট ইভেন্ট ইভেন্ট হ্যান্ডলারটি তৈরি করতে বোতামটি ডাবল ক্লিক করুন এবং নিম্নলিখিত কোডটি যুক্ত করুন।

এই কোডটি ফাইল ওপেন ডায়ালগ বাক্সটি প্রদর্শন করে এবং ফলাফলটি "প্লেসাউন্ড" নামের একটি পদ্ধতিতে পাস করে যা আপনি পরবর্তী পদক্ষেপে তৈরি করবেন।

 OpenFileDialog dialog = new OpenFileDialog();
 dialog.Filter = "Audio Files (.wav)|*.wav";


if(dialog.ShowDialog() == DialogResult.OK)
{
  string path = dialog.FileName;
  playSound(path);
}

5. বাটন 1_ ক্লিক ইভেন্ট হ্যান্ডারের নীচে নিম্নলিখিত পদ্ধতি কোডটি যুক্ত করুন।

 private void playSound(string path)
 {
   System.Media.SoundPlayer player = new System.Media.SoundPlayer();
   player.SoundLocation = path;
   player.Load();
   player.Play();
 }

N.এখন কোডটি চালানোর জন্য F5 টিপে অ্যাপ্লিকেশনটি চালানো যাক।

7. বোতামটি ক্লিক করুন এবং একটি অডিও ফাইল নির্বাচন করুন। ফাইল লোড হওয়ার পরে শব্দটি বাজবে।

আমি আশা করি এটি নতুনদের জন্য দরকারী উদাহরণ ...


1

আমি মনে করি আপনাকে প্রথমে সংস্থানগুলিতে একটি .wav ফাইল যুক্ত করতে হবে। উদাহরণস্বরূপ আপনার কাছে সাউন্ড.ওয়াভ নামের সাউন্ড ফাইল রয়েছে। আপনি রিসোর্সে Sound.wav ফাইলটি যুক্ত করার পরে, আপনি এই কোডটি ব্যবহার করতে পারেন:

System.Media.SoundPlayer player = new System.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();

এটি শব্দ বাজানোর আরেকটি উপায়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.